Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Editing, contenteditable and execCommand #17

Closed
jgraham opened this issue Nov 11, 2021 · 7 comments
Closed

Editing, contenteditable and execCommand #17

jgraham opened this issue Nov 11, 2021 · 7 comments
Labels
focus-area-proposal Focus Area Proposal requires:spec-maturity Spec isn't mature enough
Milestone

Comments

@jgraham
Copy link
Contributor

jgraham commented Nov 11, 2021

Description
contenteditable, execCommand and editing

Specification
https://w3c.github.io/editing/docs/execCommand/
https://w3c.github.io/contentEditable/

Tests
https://wpt.fyi/results/editing?label=experimental&label=master&aligned
https://wpt.fyi/results/contenteditable?label=experimental&label=master&aligned

Rationale
contenteditable/execCommand are widely used by web pages to implement rich editing functionality. The editing model, and behaviour of execCommand differs substantially across browsers. This causes a significant number of compat issues (see e.g. https://bugzilla.mozilla.org/show_bug.cgi?id=1341152 and other bugs referenced therein). Fixing these issues would allow editors to work without either requiring browser-specific codepaths or breaking in some implementations.

Concerns
Although these areas have specifications, the actual implementations largely predate the specs, and came from reverse-engineering competitors. Therefore it's unclear if the specs represent a model that everyone wants/is able to converge on. An additional difficulty here is that because some libraries already assume implementation-specific behaviour it can be that converging on a single behaviour causes breakage in the short term.

It is possible/likely that preliminary work to find a viable path forward is required before we can make this part of the Interop 202x effort. That may make it difficult to include in Interop 2022. However given the magnitude of the problem, we should prioritize that preliminary work so we're able to include this as a focus area as soon as possible.

@foolip foolip mentioned this issue Nov 12, 2021
36 tasks
@foolip foolip added the requires:spec-maturity Spec isn't mature enough label Nov 29, 2021
@foolip
Copy link
Member

foolip commented Nov 29, 2021

I've created the requires:spec-maturity label and applied it due to the status of https://w3c.github.io/editing/docs/execCommand/, which calls itself Unofficial Draft and has a big scary warning at the top.

I haven't gone through all proposals to see what else the label might apply to.

@foolip
Copy link
Member

foolip commented Dec 10, 2021

Based on the Dec 9 meeting, with outcomes summarized in #39 (comment), we won't include this proposal in Interop 2022.

However, I'm leaving it open since we still need to have a discussion about whether we want to collaborate in some way to address the most important sources of site compat issues for Gecko in editing.

@foolip
Copy link
Member

foolip commented Dec 10, 2021

@annevk @jgraham do you have thoughts on what we could do jointly to improve things in this area? https://bugzilla.mozilla.org/show_bug.cgi?id=1341152 was linked and there are lots of bugs, but do you know if bugs are concentrated around specific issues? Is there a subset of contenteditable or execCommand() where some spec+test work could do a lot of good?

(There are lots of differences and presumably it's not all equally important, and possibly very important things are missing.)

@jgraham
Copy link
Contributor Author

jgraham commented Feb 28, 2022

I think we need to get some editing experts from various engines together to set the goals for this area.

I've set up https://github.com/web-platform-tests/interop-2022-editing as a venue for discussions. @masayuki-nakano is the gecko engineer working most on editing topics and @karlcow knows about the compatibility challenges; we also need some Blink and WebKit contributors who are able to provide relevant expertise to move this forward.

@foolip
Copy link
Member

foolip commented Mar 1, 2022

@dlibby- do you have a contact at Microsoft for someone who knows editing well and could participate in this effort?

@dlibby-
Copy link

dlibby- commented Mar 2, 2022

@BoCupp-Microsoft can help out here.

@foolip
Copy link
Member

foolip commented Aug 18, 2022

Closing this, discussion continues in https://github.com/web-platform-tests/interop-2022-editing

@foolip foolip closed this as completed Aug 18, 2022
@gsnedders gsnedders added focus-area-proposal Focus Area Proposal and removed proposal labels Sep 16, 2022
@gsnedders gsnedders added this to the Interop 2022 milestone Sep 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
focus-area-proposal Focus Area Proposal requires:spec-maturity Spec isn't mature enough
Projects
None yet
Development

No branches or pull requests

4 participants