w3c / input-events

Input Events
https://w3c.github.io/input-events/
Other
23 stars 16 forks source link

Chromium-team proposal for InputEvent V1 safe subset #50

Closed chong-z closed 7 years ago

chong-z commented 7 years ago

This PR:

  1. Removes 'deleteByComposition' and 'insertFromComposition'
  2. Makes typing and IME related inputType non-cancelable and summarizes in a table

Please refer to the doc below for more info: https://docs.google.com/document/d/1yPZEkHl_WOPjVeilZjE1XmlyjLCe-uS7THI0SboyrMM/edit?usp=sharing

Related meeting notes: https://lists.w3.org/Archives/Public/public-editing-tf/2017Feb/0054.html

johanneswilm commented 7 years ago

As I understand the requirements of having different versions outlined by Florian, this doesn't work as it makes a version 1 that is in direct conflict with version 2. Instead of saying that certain beforeinput events are not cancelable, it will just not have to specify any requirements as for cancelability. Version 2 then will specify that they will have to be cancelable.

johanneswilm commented 7 years ago

If we do it that way, anyone implementing version 2 will automatically comply with version 1.

chong-z commented 7 years ago

@frivoal Can you confirm if that's what you mean? I believe we need a clear specification about cancelable and non-cancelable input types in V1.

johanneswilm commented 7 years ago

@choniong: If you write that certain must be non-cancellable, then you are making webkit non-compliant.

chong-z commented 7 years ago

@johanneswilm Can I have a specific suggestion on how to tweak the PR to meet the requirements?

johanneswilm commented 7 years ago

Instead of the table of when it is cancelable and when it isn't, write something like "The beforeinput event MUST be cancelable if the inputType is ..." And then a list of all the imputtypes where it's cancelable in version 1. In version 2 this list will then be longer.

chong-z commented 7 years ago

@johanneswilm How about this?

johanneswilm commented 7 years ago

This looks good to me.

chong-z commented 7 years ago

Thanks for reviewing. Is there anything I need to do to get it merged and published?

johanneswilm commented 7 years ago

@choniong No, I will take it from here. You should be done unless you want to change something.

johanneswilm commented 7 years ago

@choniong Btw, is the list of cancelable events final? During the meeting it sounded like Alexandre wasn't quite sure whether you guys needed to change it before publishing.

chong-z commented 7 years ago

Yes this is the final list. We have discussed after the meeting and decided that it's OK to make 'insertTranspose' and 'insertLink' cancelable (which is reflected in the original proposal and this PR).

johanneswilm commented 7 years ago

@choniong Merged here: https://github.com/w3c/input-events/tree/v1

johanneswilm commented 7 years ago

I will go ahead and make sure that both of the levels will go through the W3C process, etc.

frivoal commented 7 years ago

Sorry for the late answer. Yes, that is indeed what I meant.

Additionally, if you agree that these things should eventually be made cancellable, but don't want to make chrome non conformant in v1, you could also have a list of things that SHOULD (not MUST) be cancellable, and include them there. SHOULD means that it is better to do so if you can, but if you have reasons, it's ok not to, and that does not make you non conformant.

johanneswilm commented 7 years ago

Right. Important to point out the difference between should and must, but in this case it's actually an absolute requirement (for all versions), so the right term would be MUST. One could also add "should" for those types that are cancelable in webkit but not blink, but given that webkit goes straight to level 2, it seems there is no need for that.

On 16 Feb 2017 10:11 p.m., "Florian Rivoal" notifications@github.com wrote:

Sorry for the late answer. Yes, that is indeed what I meant.

Additionally, if you agree that these things should eventually be made cancellable, but don't want to make chrome non conformant in v1, you could also have a list of things that SHOULD (not MUST) be cancellable, and include them there. SHOULD means that it is better to do so if you can, but if you have reasons, it's ok not to, and that does not make you non conformant.

— You are receiving this because you modified the open/close state.

Reply to this email directly, view it on GitHub https://github.com/w3c/input-events/pull/50#issuecomment-280518807, or mute the thread https://github.com/notifications/unsubscribe-auth/AAkWOGGfk3WEWLNR-XAYpvIvQwy3Angkks5rdPPdgaJpZM4MDn2B .

chong-z commented 7 years ago

@johanneswilm I noticed that the README link in https://github.com/w3c/input-events/tree/v1 is still pointing to the Level 2 doc. Is it possible to have a published url for Level 1 to make it easier for Chrome to ship the feature? Thanks!

johanneswilm commented 7 years ago

@choniong Hey, I am currently revising both documents, but shortly both v1 and v2 should be published each under their own URL on the W3C server, so that should give you wht you need.