tinymce.full.js
function inputMethodFocus() {
        if (!editor.settings.content_editable) {
          // Case 1 IME doesn't initialize if you focus the document
          // Disabled since it was interferring with the cE=false logic
          // Also coultn't reproduce the issue on Safari 9
          /*dom.bind(editor.getDoc(), 'focusin', function() {
            selection.setRng(selection.getRng());
          });*/

          // Case 2 IME doesn't initialize if you click the documentElement it also doesn't properly fire the focusin event
          // Needs to be both down/up due to weird rendering bug on Chrome Windows
          dom.bind(editor.getDoc(), 'mousedown mouseup', function (e) {
            var rng;

            if (e.target == editor.getDoc().documentElement) {
              rng = selection.getRng();
              editor.getBody().focus();

              if (e.type == 'mousedown') {
                if (CaretContainer.isCaretContainer(rng.startContainer)) {
                  return;
                }

                // Edge case for mousedown, drag select and mousedown again within selection on Chrome Windows to render caret
                selection.placeCaretAt(e.clientX, e.clientY);
              } else {
                selection.setRng(rng);
              }
            }
          });
        }
      }
function inputMethodFocus() {
        if (!editor.settings.content_editable) {
          // Case 1 IME doesn't initialize if you focus the document
          // Disabled since it was interferring with the cE=false logic
          // Also coultn't reproduce the issue on Safari 9
          /*dom.bind(editor.getDoc(), 'focusin', function() {
            selection.setRng(selection.getRng());
          });*/

          // Case 2 IME doesn't initialize if you click the documentElement it also doesn't properly fire the focusin event
          // Needs to be both down/up due to weird rendering bug on Chrome Windows
          dom.bind(editor.getDoc(), 'mousedown mouseup', function (e) {
            var rng;

            if (e.target == editor.getDoc().documentElement) {
              rng = selection.getRng();
              editor.getBody().focus();

              if (e.type == 'mousedown') {
                if (CaretContainer.isCaretContainer(rng.startContainer)) {
                  return;
                }

                // Edge case for mousedown, drag select and mousedown again within selection on Chrome Windows to render caret
                selection.placeCaretAt(e.clientX, e.clientY);
              } else {
                selection.setRng(rng);
              }
            }
          });
        }
      }
function inputMethodFocus ( ) { if ( ! editor . settings . content_editable ) { // Case 1 IME doesn't initialize if you focus the document // Disabled since it was interferring with the cE=false logic // Also coultn't reproduce the issue on Safari 9 /*dom.bind(editor.getDoc(), 'focusin', function() {
            selection.setRng(selection.getRng());
          });*/ // Case 2 IME doesn't initialize if you click the documentElement it also doesn't properly fire the focusin event // Needs to be both down/up due to weird rendering bug on Chrome Windows dom . bind ( editor . getDoc ( ) , 'mousedown mouseup' , function ( e ) { var rng ; if ( e . target == editor . getDoc ( ) . documentElement ) { rng = selection . getRng ( ) ; editor . getBody ( ) . focus ( ) ; if ( e . type == 'mousedown' ) { if ( CaretContainer . isCaretContainer ( rng . startContainer ) ) { return ; } // Edge case for mousedown, drag select and mousedown again within selection on Chrome Windows to render caret selection . placeCaretAt ( e . clientX , e . clientY ) ; } else { selection . setRng ( rng ) ; } } } ) ; } }
WebKit has a weird issue where it some times fails to properly convert keypresses to input method keystrokes.
The IME on Mac doesn't initialize when it doesn't fire a proper focus event.

This seems to happen when the user manages to click the documentElement element then the window doesn't get proper focus until
you enter a character into the editor.

It also happens when the first focus in made to the body.

See: https://bugs.webkit.org/show_bug.cgi?id=83566
WebKit has a weird issue where it some times fails to properly convert keypresses to input method keystrokes . The IME on Mac doesn t initialize when it doesn t fire a proper focus event .