Hi Nicola,
The textformatupdate event does not get fired in response to browser spell 
checking. It's only used for decorations applied by IMEs to give hints to users 
during composition, e.g. thin/thick underlines for "phrase mode" in Japanese 
IME.
Spell checking for an EditContext depends on how the author builds the view of 
their Editor.
If the author builds with "normal" DOM elements -- <div>, <span>, etc -- the 
platform will run the spell-checker on these like any other editable elements, 
drawing the underlines and allowing the user to choose corrections. EditContext 
will not see any of this, and will only be able to tell at the point that the 
user has chosen a suggestion, e.g. by listening for beforeinput with 
event.inputType === "insertReplacementText". So spell-checking will work much 
like a normal contenteditable div today.
If the author uses <canvas>, the platform's native spellcheck will have no way 
to integrate with the EditContext. By using <canvas>, the author is taking on 
the responsibility for building out their editor from scratch, including 
spell-checking if needed by their application.
-- Dan

From: Nicola Tommasi <tomma...@chromium.org>
Sent: Tuesday, June 27, 2023 1:03 AM
To: blink-dev <blink-dev@chromium.org>
Cc: Daniel Clark <dan...@microsoft.com>; Yoav Weiss <yoavwe...@chromium.org>; 
Mike Taylor <miketa...@chromium.org>; blin...@chromium.org 
<blink-dev@chromium.org>; Joshua Bell <jsb...@chromium.org>; chri...@google.com 
<chris...@google.com>; Anupam Snigdha <sni...@microsoft.com>; Alex Keng 
<shih...@microsoft.com>; mt...@google.com <m...@google.com>; Alex Russell 
<slightly...@chromium.org>; Arthur Sonzogni <arthursonzo...@chromium.org>
Subject: Re: [blink-dev] Intent to Experiment: EditContext API

Hi, from a privacy perspective we have some concerns regarding the spellchecker 
section: we enforced in the past the concept that websites should not learn 
about the user dictionaries [1] and it seems like the spellcheking API proposal 
could leak those via the textformatupdate event. Was this taken into 
consideration?Do we have any way to prevent this?

[1] https://drafts.csswg.org/css-pseudo-4/#highlight-security

Thanks,
Nicola
On Thursday, June 15, 2023 at 11:31:59 PM UTC 
dan...@microsoft.com<mailto:dan...@microsoft.com> wrote:
Thanks Alex!

It looks like 
crbug.com/1263817<https://bugs.chromium.org/p/chromium/issues/detail?id=1263817>
 is a good tracking bug for https://github.com/w3c/uievents/issues/202 (which 
is already linked from there). Since EditContext differs in how these events 
will fire I think this issue can be resolved separately, but I’ve tagged some 
folks in on that issue to try to drive some progress.

I’ll investigate what can be done to get the tests moved to WPT.

From: Alex Russell <slightly...@chromium.org<mailto:slightly...@chromium.org>>
Sent: Wednesday, June 14, 2023 8:32 AM
To: blink-dev <blink-dev@chromium.org<mailto:blink-dev@chromium.org>>
Cc: Yoav Weiss <yoavwe...@chromium.org<mailto:yoavwe...@chromium.org>>; Mike 
Taylor <miketa...@chromium.org<mailto:miketa...@chromium.org>>; 
blin...@chromium.org<mailto:blin...@chromium.org> 
<blink-dev@chromium.org<mailto:blink-dev@chromium.org>>; Joshua Bell 
<jsb...@chromium.org<mailto:jsb...@chromium.org>>; 
chri...@google.com<mailto:chri...@google.com> 
<chris...@google.com<mailto:chris...@google.com>>; Anupam Snigdha 
<sni...@microsoft.com<mailto:sni...@microsoft.com>>; Alex Keng 
<shih...@microsoft.com<mailto:shih...@microsoft.com>>; Daniel Clark 
<dan...@microsoft.com<mailto:dan...@microsoft.com>>; 
mt...@google.com<mailto:mt...@google.com> 
<m...@google.com<mailto:m...@google.com>>
Subject: Re: [blink-dev] Intent to Experiment: EditContext API

LGTM to experiment assuming WPT caveats are addressed.

On editing event order, perhaps we can track this separately. Is there a crbug 
for it?
On Tuesday, June 13, 2023 at 9:02:34 PM UTC-7 Yoav Weiss wrote:
On Wed, Jun 14, 2023 at 12:03 AM 'Daniel Clark' via blink-dev 
<blink-dev@chromium.org<mailto:blink-dev@chromium.org>> wrote:
> Although in the template this is phrased as a yes/no question, can you say 
> more about the WPT coverage and limitations?

We currently do not have tests in web-platform-tests.
There are tests outside the external/wpt folder:
third_party/blink/web_tests/editing/input/edit-context.html<https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/editing/input/edit-context.html>
third_party/blink/web_tests/editing/input/edit-context-dom-mutation.html<https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/editing/input/edit-context-dom-mutation.html>

I’m going to migrate as much of the contents of these as I can to WPT. This 
won’t be possible for a lot of the subtests since they rely on primitives like 
eventSender and textInputController, which aren’t available in WPT.
There is also test coverage that still needs to be written for scenarios 
involving nested editable elements, and I plan to add these as WPTs.

Would it be possible to add WebDriver extensions to enable these tests to move 
over to WPT?

+Mathias Bynens<mailto:m...@google.com> - FYI


There’s been some work 
done<https://chromium-review.googlesource.com/c/chromium/src/+/3009937> around 
adding support for IME testing but my understanding is that more work is needed 
in order to use this in WPTs.

From: Daniel Clark
Sent: Tuesday, June 13, 2023 10:42 AM
To: Mike Taylor <miketa...@chromium.org<mailto:miketa...@chromium.org>>; 
blink-dev@chromium.org<mailto:blink-dev@chromium.org>
Cc: Chris Harrelson <chris...@google.com<mailto:chris...@google.com>>; Anupam 
Snigdha <sni...@microsoft.com<mailto:sni...@microsoft.com>>; Alex Keng 
<shih...@microsoft.com<mailto:shih...@microsoft.com>>
Subject: RE: [blink-dev] Intent to Experiment: EditContext API

Tentatively M116 - M120 for the trial.

From: Mike Taylor <miketa...@chromium.org<mailto:miketa...@chromium.org>>
Sent: Tuesday, June 13, 2023 9:24 AM
To: Daniel Clark <dan...@microsoft.com<mailto:dan...@microsoft.com>>; 
blink-dev@chromium.org<mailto:blink-dev@chromium.org>
Cc: Chris Harrelson <chris...@google.com<mailto:chris...@google.com>>; Anupam 
Snigdha <sni...@microsoft.com<mailto:sni...@microsoft.com>>; Alex Keng 
<shih...@microsoft.com<mailto:shih...@microsoft.com>>
Subject: Re: [blink-dev] Intent to Experiment: EditContext API


Do you all have a timeline in mind for experimentation?
On 6/12/23 7:00 PM, 'Daniel Clark' via blink-dev wrote:
Contact emails
sni...@microsoft.com<mailto:sni...@microsoft.com>, 
shih...@microsoft.com<mailto:shih...@microsoft.com>, 
bemat...@microsoft.com<mailto:bemat...@microsoft.com>, 
dan...@microsoft.com<mailto:dan...@microsoft.com>
Explainer
https://github.com/w3c/edit-context/blob/gh-pages/explainer.md
Specification
https://w3c.github.io/edit-context
Design docs

https://github.com/w3c/edit-context/blob/gh-pages/dev-design.md
Summary

The EditContext API simplifies the process of integrating a web app with 
advanced text input methods such as VK shape-writing, Handwriting panels, 
speech recognition, IME Compositions etc., improves accessibility and 
performance, and unlocks new capabilities for web-based editors.

Blink component
Blink>Editing<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EEditing>
Search tags
editing<https://chromestatus.com/features#tags:editing>, 
contenteditable<https://chromestatus.com/features#tags:contenteditable>, 
input<https://chromestatus.com/features#tags:input>, 
rawinput<https://chromestatus.com/features#tags:rawinput>, 
ime<https://chromestatus.com/features#tags:ime>
TAG review
https://github.com/w3ctag/design-reviews/issues/416
TAG review status
Pending
Risks

Interoperability and Compatibility

There are no known interop or compat risks.


Gecko: No signal

WebKit: No signal
It'd be good to file for positions (even if that doesn't block an OT)


Web developers: Strongly positive Positive feedback from Word online, Adobe and 
Figma, Google Docs

Other signals:
Activation

Developers interested in this feature will typically have their own polyfill 
for text input using hidden textarea or contenteditable elements. Feature 
detecting and using new API to avoid side effects of previous approaches is 
intended to be easily adoptable.

Do we plan for each property that adopts this to write their own polyfill? Or 
to split their code paths for supporting and non supporting browsers?

WebView application risks

None

Goals for experimentation
We are looking for feedback on the developer ergonomics of using the API and 
for confirmation that it meets the needs of production web apps for various 
input modes. This is a complex API, and different developers are expected to 
use it in different ways. For example, some partners plan to construct the view 
of their editable region in the subtree of the EditContext-associated element, 
while other partners plan to keep the EditContext-associated element off-screen 
while using the EditContext APIs to set the bounds of the editable region.

We want to ensure that our design enables all these scenarios and is robust 
given the wide field of IMEs utilized by different users, which may have subtly 
different behaviors and event timings.
Ongoing technical constraints

None

Debuggability
Existing DevTools functionality should suffice to debug EditContext.
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, 
Chrome OS, Android, and Android WebView)?
Yes
Is this feature fully tested by 
web-platform-tests<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?
No
Flag name
--enable-blink-features=EditContext
Requires code in //chrome?
False
Tracking bug
https://bugs.chromium.org/p/chromium/issues/detail?id=999184
Estimated milestones

No milestones specified

Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5041440373604352
Links to previous Intent discussions
I2I: 
https://groups.google.com/u/1/a/chromium.org/g/blink-dev/c/OHqvPx9mFww/m/1za_qdEHDwAJ
This intent message was generated by Chrome Platform 
Status<https://chromestatus.com/>.

--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
blink-dev+unsubscr...@chromium.org<mailto:blink-dev+unsubscr...@chromium.org>.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/SN6PR00MB0448C960D827BFAFE2FD1F2CC554A%40SN6PR00MB0448.namprd00.prod.outlook.com<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/SN6PR00MB0448C960D827BFAFE2FD1F2CC554A%40SN6PR00MB0448.namprd00.prod.outlook.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
blink-dev+unsubscr...@chromium.org<mailto:blink-dev+unsubscr...@chromium.org>.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/DM5PR00MB04395FA5C89C3CAA7066A42CC555A%40DM5PR00MB0439.namprd00.prod.outlook.com<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/DM5PR00MB04395FA5C89C3CAA7066A42CC555A%40DM5PR00MB0439.namprd00.prod.outlook.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/DM5PR00MB0439A6AB269414ADB445B080C527A%40DM5PR00MB0439.namprd00.prod.outlook.com.

Reply via email to