code: function (instance, td, row, col, prop, keyboardProxy, useOriginalValue, suffix) {
      if (texteditor.isCellEdited) {
        return;
      }
  
      keyboardProxy.on('cut.editor', function (event) {
        event.stopPropagation();
      });
  
      keyboardProxy.on('paste.editor', function (event) {
        event.stopPropagation();
      });
  
      var $td = $(td);
  
      if (!instance.getCellMeta(row, col).isWritable) {
        return;
      }
  
      texteditor.isCellEdited = true;
  
      if (useOriginalValue) {
        var original = instance.getDataAtCell(row, prop);
        original = Handsontable.helper.stringify(original) + (suffix || '');
        keyboardProxy.val(original);
        texteditor.setCaretPosition(keyboardProxy, original.length);
      }
      else {
        keyboardProxy.val('');
      }
  
      texteditor.refreshDimensions(instance, $td, keyboardProxy);
      keyboardProxy.parent().removeClass('htHidden');
  
      instance.rootElement.triggerHandler('beginediting.handsontable');
  
      setTimeout(function () {
        //async fix for Firefox 3.6.28 (needs manual testing)
        keyboardProxy.parent().css({
          overflow: 'visible'
        });
      }, 1);
    }
docs: Shows text input in grid cell