From 64ab919613865f9825422308b9e609ba9bf61e7a Mon Sep 17 00:00:00 2001 From: junhaoyap Date: Sun, 1 Nov 2015 22:15:15 -0800 Subject: [PATCH] Make cmd and ctrl both trigger events --- client/commonFramework.js | 10 ++++++++-- server/views/coursewares/showVideo.jade | 19 ++++++++++--------- .../coursewares/showZiplineOrBasejump.jade | 18 ++++++++++-------- 3 files changed, 28 insertions(+), 19 deletions(-) diff --git a/client/commonFramework.js b/client/commonFramework.js index f1aaa768aa..532400be06 100644 --- a/client/commonFramework.js +++ b/client/commonFramework.js @@ -426,6 +426,11 @@ var editor = (function(CodeMirror, emmetCodeMirror, common) { isInitRun = false; bonfireExecute(true); return false; + }, + 'Cmd-Enter': function() { + isInitRun = false; + bonfireExecute(true); + return false; } }); @@ -656,8 +661,9 @@ var testSuccess = function() { }; function ctrlEnterClickHandler(e) { - // ctrl + enter - if (e.ctrlKey && e.keyCode === 13) { + // ctrl + enter or cmd + enter + if (e.metaKey && e.keyCode === 13 || + e.ctrlKey && e.keyCode === 13) { $('#complete-courseware-dialog').off('keydown', ctrlEnterClickHandler); if ($('#submit-challenge').length > 0) { $('#submit-challenge').click(); diff --git a/server/views/coursewares/showVideo.jade b/server/views/coursewares/showVideo.jade index 90292e742d..b73ace78e8 100644 --- a/server/views/coursewares/showVideo.jade +++ b/server/views/coursewares/showVideo.jade @@ -40,19 +40,21 @@ block content script(type="text/javascript"). var controlEnterHandler = function(e) { - $('body').unbind('keypress'); - if (e.ctrlKey && e.keyCode == 13) { + $('body').unbind('keydown'); + if (e.metaKey && e.keyCode === 13 || + e.ctrlKey && e.keyCode === 13) { $('#complete-courseware-editorless-dialog').modal('show'); } else { - $('body').bind('keypress', controlEnterHandler); + $('body').bind('keydown', controlEnterHandler); } }; var modalControlEnterHandler = function(e) { - $('#complete-courseware-editorless-dialog').unbind('keypress'); - if (e.ctrlKey && e.keyCode == 13) { + $('#complete-courseware-editorless-dialog').unbind('keydown'); + if (e.metaKey && e.keyCode === 13 || + e.ctrlKey && e.keyCode === 13) { $('#next-courseware-button').click(); } else { - $('#complete-courseware-editorless-dialog').bind('keypress', modalControlEnterHandler); + $('#complete-courseware-editorless-dialog').bind('keydown', modalControlEnterHandler); } }; @@ -68,11 +70,11 @@ block content if (user) a.btn.btn-lg.btn-primary.btn-block#next-courseware-button(name='_csrf', value=_csrf) I've completed this challenge (ctrl + enter) script. - $('#complete-courseware-editorless-dialog').bind('keypress', modalControlEnterHandler); + $('#complete-courseware-editorless-dialog').bind('keydown', modalControlEnterHandler); else a.animated.fadeIn.btn.btn-lg.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) I've completed this challenge (ctrl + enter) script. - $('body').bind('keypress', controlEnterHandler); + $('body').bind('keydown', controlEnterHandler); script. var challenge_Id = !{JSON.stringify(challengeId)}; var challenge_Name = !{JSON.stringify(name)}; @@ -84,4 +86,3 @@ block content } }); include ../partials/challenge-modals - diff --git a/server/views/coursewares/showZiplineOrBasejump.jade b/server/views/coursewares/showZiplineOrBasejump.jade index f5e4b666d2..72ab88bf4b 100644 --- a/server/views/coursewares/showZiplineOrBasejump.jade +++ b/server/views/coursewares/showZiplineOrBasejump.jade @@ -43,19 +43,21 @@ block content var dashedName = !{JSON.stringify(dashedName)}; var challengeType = !{JSON.stringify(challengeType)}; var controlEnterHandler = function (e) { - $('body').unbind('keypress'); - if (e.ctrlKey && e.keyCode == 13) { + $('body').unbind('keydown'); + if (e.metaKey && e.keyCode === 13 || + e.ctrlKey && e.keyCode === 13) { $('#complete-zipline-or-basejump-dialog').modal('show'); } else { - $('body').bind('keypress', controlEnterHandler); + $('body').bind('keydown', controlEnterHandler); } }; var modalControlEnterHandler = function (e) { - $('#complete-zipline-or-basejump-dialog').unbind('keypress'); - if (e.ctrlKey && e.keyCode == 13) { + $('#complete-zipline-or-basejump-dialog').unbind('keydown'); + if (e.metaKey && e.keyCode === 13 || + e.ctrlKey && e.keyCode === 13) { $('#next-courseware-button').click(); } else { - $('#complete-zipline-or-basejump-dialog').on('keypress', modalControlEnterHandler); + $('#complete-zipline-or-basejump-dialog').on('keydown', modalControlEnterHandler); } }; @@ -90,11 +92,11 @@ block content a.btn.btn-lg.btn-primary.btn-block#next-courseware-button(name='_csrf', value=_csrf, ng-disabled='completedWithForm.$invalid') Go to my next challenge .button-spacer script. - $('#complete-zipline-or-basejump-dialog').on('keypress', modalControlEnterHandler); + $('#complete-zipline-or-basejump-dialog').on('keydown', modalControlEnterHandler); else a.btn.btn-lg.btn-primary.btn-block(href='/challenges/next-challenge?id=' + challengeId) Go to my next challenge script. - $('body').on('keypress', controlEnterHandler); + $('body').on('keydown', controlEnterHandler); include ../partials/challenge-modals script. document.addEventListener('gitter-sidecar-ready', function(e) {