From 0b6c71f688b6e8d2c067f943879099a554e88728 Mon Sep 17 00:00:00 2001 From: James Allen <james@sharelatex.com> Date: Tue, 11 Oct 2016 11:17:38 +0100 Subject: [PATCH] Patch Ace to fix accent key problem in Chrome --- services/web/public/js/ace-1.2.5/ace.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/services/web/public/js/ace-1.2.5/ace.js b/services/web/public/js/ace-1.2.5/ace.js index 2b601cc9b9..713f82c218 100644 --- a/services/web/public/js/ace-1.2.5/ace.js +++ b/services/web/public/js/ace-1.2.5/ace.js @@ -34,6 +34,14 @@ * @param payload a function to call with (require, exports, module) params */ +// WORKAROUND: Accent keys and Korean keys don't work in Chrome >53. +// https://github.com/ajaxorg/ace/issues/3045 +var isChrome53PlusMatched = navigator.userAgent.match(/Chrome\/(.*?)(.|\s+|$)/); +var isChrome53Plus = false; +if (isChrome53PlusMatched) { + isChrome53Plus = isChrome53PlusMatched[1] >= 53; +} + (function() { var ACE_NAMESPACE = "ace"; @@ -2283,6 +2291,9 @@ var TextInput = function(parentNode, host) { if (e.type == "compositionend" && c.range) { host.selection.setRange(c.range); } + // WORKAROUND: Accent keys and Korean keys don't work in Chrome >53. + // https://github.com/ajaxorg/ace/issues/3045 + if (isChrome53Plus) onInput(); };