summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/lib/utils/common_utils.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/lib/utils/common_utils.js')
-rw-r--r--app/assets/javascripts/lib/utils/common_utils.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/app/assets/javascripts/lib/utils/common_utils.js b/app/assets/javascripts/lib/utils/common_utils.js
index 27f2f4a41eb..0edf1dae165 100644
--- a/app/assets/javascripts/lib/utils/common_utils.js
+++ b/app/assets/javascripts/lib/utils/common_utils.js
@@ -145,6 +145,28 @@
return decodeURIComponent(results[2].replace(/\+/g, ' '));
};
+ gl.utils.getCursorPosition = function(input) {
+ var cursorPosition = 0;
+
+ // IE Support
+ if (document.selection) {
+ input.focus();
+
+ // To get cursor position, get empty selection range
+ var range = document.selection.createRange();
+
+ // Move selection start to 0 position
+ range.moveStart('character', -1 * input.value.length);
+
+ // The cursor position is selection length
+ cursorPosition = range.text.length;
+ } else if (input.selectionStart || input.selectionStart === '0') {
+ cursorPosition = input.selectionStart;
+ }
+
+ return cursorPosition;
+ };
+
gl.utils.isMetaKey = function(e) {
return e.metaKey || e.ctrlKey || e.altKey || e.shiftKey;
};