From 58296aa2664723a1d2abc0ebaeb42c0432f38c95 Mon Sep 17 00:00:00 2001
From: chylex <info@chylex.com>
Date: Wed, 5 Apr 2017 23:08:52 +0200
Subject: [PATCH] Fix emoji keyboard to append emoji at caret instead of the
 end

---
 Resources/Plugins/emoji-keyboard/browser.js | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/Resources/Plugins/emoji-keyboard/browser.js b/Resources/Plugins/emoji-keyboard/browser.js
index 34112f21..05d63fb3 100644
--- a/Resources/Plugins/emoji-keyboard/browser.js
+++ b/Resources/Plugins/emoji-keyboard/browser.js
@@ -84,9 +84,17 @@ enabled(){
     
     keyboard.addEventListener("click", function(e){
       if (e.target.tagName === "IMG"){
-        input.val(input.val()+e.target.getAttribute("alt"));
+        var val = input.val();
+        var inserted = e.target.getAttribute("alt");
+        var posStart = input[0].selectionStart;
+        var posEnd = input[0].selectionEnd;
+        
+        input.val(val.slice(0, posStart)+inserted+val.slice(posStart));
         input.trigger("change");
         input.focus();
+        
+        input[0].selectionStart = posStart+inserted.length;
+        input[0].selectionEnd = posEnd+inserted.length;
       }
       
       e.stopPropagation();