Static proofread in dialog mode was replaced with a compact and intuitive floating one. Now the dialog collects only suggestions without extracting the whole text from the original text field.
The color of detected grammar-type errors changed from green to blue.
AI-based proofreading engine
AI-based engine outputs two types of suggestions: spelling and grammar. Suggested corrections will be flagged with red and blue underlines accordingly. Previously spelling suggestions were mixed with the classical dictionary-based spelling engine.
Added new option <Enabled>true</Enabled> to SpellEngineOptions tag that regulates if classical spell check engine should be enabled in parallel with AI-based engine.
Core & API
[GitHub#180] API | SCAYT | WProofreader: Alphabetical sorting of personal dictionary
Bug fixes
WProofreader
[WP-3463] WProofreader: Misspelled words are not highlighted if contenteditable=’false’ mentioned in the same element as text to be spell checked
[WP-3434, GitHub#26] WProofreader: There is no tooltip on hover to the badge with the problems counter
[WP-3610] WProofreader: Broken styles of badge and suggestion pop-up on Square website
[WP-3677] WProofreader: Disabled badge overlay text at the right corner of editable field
[WP-3695] WProofreader: App fails to start in inline elements like span
[WP-3701] WProofreader: App fails to start with enabled detectLocalizationLanguage option
[WP-3707] WProofreader/SCAYT core: Incorrect sentence detection with <sub> and <sup> HTML elements
[WP-3711] WProofreader: Suggestion can’t be applied if the badge is focused
[WP-3718] WProofreader: App can’t be initialized properly in <textarea> if user ignore <div> elements
Other
[WP-3667] XSS vulnerability in user dictionary functionality
[WP-3712] Cloud-based products: Randomly all words are underlined with no suggestions as if the dictionaries are not found
[GitHub#181] Soft hyphens should not be stored in user dictionary
[WP-3714] Memory issues in the spell check engine discovered by AddressSanitizer
[WP-1356] AppServer: CORS header is missing in OPTION requests from client to server