[M147 RC] Revert "[Editing] Respect autocorrect="off" for Windows touch keyboard" This reverts commit d92a6c59e16e009d5a14f0be69cdb122df679fcf. Reason for revert: CL seems to cause existing text to be overwritten when typing IME text - see bug for details: https://g-issues.chromium.org/u/0/issues/498745133?pli=1 Bug: 498745133 Original change's description: > [Editing] Respect autocorrect="off" for Windows touch keyboard > > The HTML autocorrect attribute (part of the WHATWG HTML standard) lets > web authors disable autocorrect on <input> and <textarea> elements by > setting autocorrect="off". The Windows touch keyboard ignores this and > still autocorrects words. For example, typing "truf" + space yields > "true " instead of preserving "truf ". > > To reproduce: > > 1. On a Windows touch-enabled device, open a page with > <input autocorrect="off">. > 2. Tap the field to bring up the touch keyboard. 3. Type a misspelled > word (e.g. "truf") then tap space. 4. Observe: the touch keyboard > replaces "truf" with "true". > > TSF's InputScope has no autocorrect field, so the touch keyboard is > unaware of the page's preference and always autocorrects. > > Fix: snapshot the document buffer in TSFTextStore::RequestLock() before > granting the lock. After the lock, if autocorrect="off" and committed > text was replaced (not appended) without an active IME composition, > revert the buffer and skip the commit. Normal typing and IME composition > are unaffected. > > Bug: 487613498 > Change-Id: Idcb07ce307a945d8f20250ca6c35d47e2bd8bbaf > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7609541 > Reviewed-by: Jesse McKenna <jessemckenna@google.com> > Commit-Queue: Pranav Modi <pranavmodi@microsoft.com> > Reviewed-by: Dana Fried <dfried@chromium.org> > Cr-Commit-Position: refs/heads/main@{#1594544} (cherry picked from commit 2f62cf50407c86cd1586be4b7e98cda2308b8bc0) Bug: 487613498 Change-Id: Ia29ecb4dde8d4a58d14d1d5689cbaff202ac038c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7728166 Commit-Queue: Jesse McKenna <jessemckenna@google.com> Reviewed-by: Dana Fried <dfried@chromium.org> Cr-Original-Commit-Position: refs/heads/main@{#1609543} Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7729438 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Owners-Override: Srinivas Sista <srinivassista@chromium.org> Commit-Queue: Srinivas Sista <srinivassista@chromium.org> Cr-Commit-Position: refs/branch-heads/7727_49@{#5} Cr-Branched-From: 7fdebb68aa7792503f4e14dc34645c014a0b0b23-refs/branch-heads/7727@{#2018} Cr-Branched-From: ce01102937348db7b88c8a4257ee4b3ac702eb1a-refs/heads/main@{#1596535}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.