diff --git a/lib/codemirror.js b/lib/codemirror.js
index <HASH>..<HASH> 100644
--- a/lib/codemirror.js
+++ b/lib/codemirror.js
@@ -2943,7 +2943,8 @@ var CodeMirror = (function() {
 
   function e_target(e) {return e.target || e.srcElement;}
   function e_button(e) {
-    if (e.which) return e.which;
+    if (mac && e.ctrlKey && e.which === 1) return 3;
+    else if (e.which) return e.which;
     else if (e.button & 1) return 1;
     else if (e.button & 2) return 3;
     else if (e.button & 4) return 2;
treat mac+ctrl+click as right-click