diff --git a/CHANGELOG.md b/CHANGELOG.md index afea2c96..cbb2dbf5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,9 +5,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Added +- `inputStyle` and `nativeSpellcheck` options to manage the native language of the browser (Thanks to [@firm1], [#52]). ### Changed - Delay before assuming that submit of the form as failed is `autosave.submit_delay` instead of `autosave.delay` (Thanks to [@Situphen], [#139]). + ## [2.9.0] - 2020-01-13 ### Added - Missing minHeight option in type definition (Thanks to [@t49tran], [#123]). diff --git a/README.md b/README.md index 4911ff11..b68caba2 100644 --- a/README.md +++ b/README.md @@ -181,6 +181,8 @@ easyMDE.value('New input for **EasyMDE**'); - **shortcuts**: Keyboard shortcuts associated with this instance. Defaults to the [array of shortcuts](#keyboard-shortcuts). - **showIcons**: An array of icon names to show. Can be used to show specific icons hidden by default without completely customizing the toolbar. - **spellChecker**: If set to `false`, disable the spell checker. Defaults to `true`. +- **inputStyle**: `textarea` or `contenteditable`. Defaults to `textarea` for desktop and `contenteditable` for mobile. `contenteditable` option is necessary to enable nativeSpellcheck. +- **nativeSpellcheck**: If set to `false`, disable native spell checker. Defaults to `true`. - **status**: If set to `false`, hide the status bar. Defaults to the array of built-in status bar items. - Optionally, you can set an array of status bar items to include, and in what order. You can even define your own custom status bar items. - **styleSelectedText**: If set to `false`, remove the `CodeMirror-selectedtext` class from selected lines. Defaults to `true`. diff --git a/src/js/easymde.js b/src/js/easymde.js index e3ea9d69..4e0a2f61 100644 --- a/src/js/easymde.js +++ b/src/js/easymde.js @@ -1858,6 +1858,8 @@ EasyMDE.prototype.render = function (el) { placeholder: options.placeholder || el.getAttribute('placeholder') || '', styleSelectedText: (options.styleSelectedText != undefined) ? options.styleSelectedText : !isMobile(), configureMouse: configureMouse, + inputStyle: (options.inputStyle != undefined) ? options.inputStyle : isMobile() ? 'contenteditable' : 'textarea', + spellcheck: (options.nativeSpellcheck != undefined) ? options.nativeSpellcheck : true, }); this.codemirror.getScrollerElement().style.minHeight = options.minHeight;