Re: [chromium-dev] Intent to Ship: Fixes to modifier flags on AltGraph-shifted keydown/keypress/keyup events.

41 views
Skip to first unread message

Wez

unread,
Feb 7, 2018, 5:24:24 PM2/7/18
to PhistucK, blin...@chromium.org, Rick Byers, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
No _good_ reason, no.  Just cluelessness on my part.  :-/

+blind-dev and bcc:chromium-dev@

On 7 February 2018 at 13:29, PhistucK <phis...@gmail.com> wrote:
Any reason why this is not (cross-?)posted to blink-dev? I am not sure intents are tracked if they are not posted there...


PhistucK

On Wed, Feb 7, 2018 at 10:04 PM, Wez <w...@chromium.org> wrote:
On 6 February 2018 at 18:21, Rick Byers <rby...@chromium.org> wrote:
So this would be changing from matching Edge's behavior in this regard to doing something different?  That seems like something to at least get Microsoft input on.  +patket@ (input/interop PM) who may be able to comment.

Yes, that is correct, though it's also changing from differing from Chrome on other platforms to matching them.  Look forward to input from patket@ though. :)

Do you have a link to the public support from Firefox?

Masayuki from Mozilla has responded on the UI Events specification bug 

https://github.com/w3c/uievents/issues/147



On Mon, Feb 5, 2018 at 5:18 PM, Wez <w...@chromium.org> wrote:

Contact emails

inpu...@chromium.org | w...@chromium.org


Spec & Bugs

At present the expected behaviour of AltGraph on Windows is not well specified (see Summary).


Chromium user-reported bug that illustrates the issues this causes:

https://bugs.chromium.org/p/chromium/issues/detail?id=25503


DOM UI Events bug tracking improvements to the specification of AltGraph behaviour:

https://github.com/w3c/uievents/issues/147


Summary

Under Windows the right-hand Alt key serves as AltGraph (aka ISO-Level-3-Shift) under some layouts (e.g. many European language layouts), to allow an additional set of printable-characters to be generated.


Internally Windows implements AltGraph as Control+Alt.

DOM UI Events does not currently specify/clarify how this implementation detail should be handled by user agents.

At present, Chrome faithfully translates the Windows Control and Alt modifier bits to their DOM counterparts in input event flags, and if both are set then it additionally sets the AltGraph modifier flag. This leads to confusion when handling AltGraph-shifted keyboard input.


We propose to enable the following new behaviour:

  • If the right-hand Alt key is pressed, then under AltGraph layouts, set the AltGraph modifer.

  • If Control+Alt are set on a key event that generates a printable character, set AltGraph.

  • When AltGraph is set, clear the Control and Alt modifier flags.


Is this feature supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

Yes - This is a fix to the AltGraph modifier under Windows, to better match other platforms.


Demo link

https://w3c.github.io/uievents/tools/key-event-viewer.html

includes a getModifierState() column under which AltGraph will be listed, if set on an event.


Risks

Interoperability and Compatibility

We believe the main risk is user expectations of sites which make use of Control+Alt modified key sequences as shortcuts. Users with AltGraph keyboard layouts configured may then believe that the sequence is triggered by the AltGraph key (since that used to set Control+Alt as well as AltGraph). Users will be able to reach those sequences by pressing left-Alt plus either Control key, instead.


Compatibility should generally be improved, since we are making Control/Alt/AltGraph modifiers easier for sites to distinguish under Windows, by making the behaviour consistent with Chrome on other platforms.


Edge: No signals

Firefox:Public support

Safari: N/A

Web developers: No signals


Is this feature fully tested by web-platform-tests? Link to test suite results from wpt.fyi.

This change is a platform-specific implementation detail of Chrome’s input pipeline, sitting below the level at which web-platform tests can typically drive the browser. We do not believe that web-platform tests are feasible in this case.


Entry on the feature dashboard:

https://www.chromestatus.com/feature/5059438092222464


--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CALekkJcQVuOAAXRe%3DNEj5OeHmeKXR8ckF0zUWFzZK0%3D_AyxHEA%40mail.gmail.com.


--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CALekkJfip8wtTCn8dey0JxVej_jLvgLXK4U-XybNYPOaohMRpA%40mail.gmail.com.


Rick Byers

unread,
Mar 13, 2018, 11:34:33 AM3/13/18
to Wez, PhistucK, blink-dev, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
I talked with Patrick Ketner privately about my aligning with Windows concern here.  He tried to reply to this thread to indicate his support, but apparently blink-dev moderation settings no longer allow posting by non-members (in an effort to curb the spam problem we've been having).   Concretely, Patrick said:

"The proposal looks solid, we didn't see any red flags."

So this LGTM1 from me.

Daniel Bratell

unread,
Mar 13, 2018, 12:41:09 PM3/13/18
to Wez, Rick Byers, PhistucK, blink-dev, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
LGTM2

/Daniel


PhistucK

To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.



--
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+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY8Ns0cQpBWz4yttecue_zK8Fbu7aKAy%2BFqhJ1NtHX__vw%40mail.gmail.com.



--
/* Opera Software, Linköping, Sweden: CET (UTC+1) */

Joe Medley

unread,
Mar 14, 2018, 2:12:08 AM3/14/18
to Rick Byers, Wez, PhistucK, blink-dev, Dave Tapuska, gar...@chromium.org, Patrick Kettner
Rick,

Just for my own edification, why is this being posted here? Chrome intents usually concern developer-facing features.

Joe Medley | Technical Writer, Chrome DevRel | jme...@google.com | 816-678-7195
If an API's not documented it doesn't exist.




PhistucK

To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.



--
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+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY8Ns0cQpBWz4yttecue_zK8Fbu7aKAy%2BFqhJ1NtHX__vw%40mail.gmail.com.

PhistucK

unread,
Mar 14, 2018, 4:15:30 AM3/14/18
to Joe Medley, Rick Byers, Wez, blink-dev, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
I think this is developer facing (minor, but still). getModifierState would behave a bit differently, I believe.


PhistucK



PhistucK

To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev+unsubscribe@chromium.org.



--
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+unsubscribe@chromium.org.

Joe Medley

unread,
Mar 14, 2018, 7:41:43 AM3/14/18
to PhistucK, Rick Byers, Wez, blink-dev, Dave Tapuska, gar...@chromium.org, Patrick Kettner
That should be noted in the status entry.

Joe Medley | Technical Writer, Chrome DevRel | jme...@google.com | 816-678-7195
If an API's not documented it doesn't exist.




PhistucK



PhistucK

To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.



--
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+...@chromium.org.

Rick Byers

unread,
Mar 14, 2018, 10:17:00 AM3/14/18
to Joe Medley, PhistucK, Wez, blink-dev, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
I think there's a reasonable case for calling this just a bugfix.  But since we're changing/clarifying the spec and deviating slightly from the current Edge behavior it seemed best to err on the side of treating it as an API change.  But maybe that's wrong, I wouldn't argue against this just being treated as a bugfix.



PhistucK



PhistucK

To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev+unsubscribe@chromium.org.



--
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+unsubscribe@chromium.org.

Wez

unread,
Mar 14, 2018, 9:01:45 PM3/14/18
to Rick Byers, Joe Medley, PhistucK, blink-dev, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
We discussed this before posting the Intent, and agreed that

- In principle this is just a bug-fix for Chrome under Windows, since the current behaviour doesn't allow AltGraph to be distinguished from Alt+Control, whereas DOM UI Events implies (by providing a separate AltGraph modifier bit) that it should be possible.
- In practice this is a developer-facing change, since some specialist content which makes use of keydown/keyup events and accounts for modifier state (e.g. web-based remote-access technologies like Chrome Remote Desktop) may be coded for the current behaviour.

Updating the status entry to mention the change to what getModifierState() reports seems reasonable to me.

Ojan Vafai

unread,
Mar 14, 2018, 9:05:18 PM3/14/18
to Rick Byers, mikel...@google.com, Wez, PhistucK, blink-dev, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
LGTM3

Side note: my understanding of the moderation settings was just that the first post from a new address needed moderation. +Mike Lawther right?



PhistucK

To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.



--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY8Ns0cQpBWz4yttecue_zK8Fbu7aKAy%2BFqhJ1NtHX__vw%40mail.gmail.com.

Rick Byers

unread,
Mar 15, 2018, 11:13:02 AM3/15/18
to Ojan Vafai, Mike Lawther, Wez, PhistucK, blink-dev, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
On Wed, Mar 14, 2018 at 9:05 PM, Ojan Vafai <oj...@chromium.org> wrote:
LGTM3

Side note: my understanding of the moderation settings was just that the first post from a new address needed moderation. +Mike Lawther right?

That's true, but it's also true you must subscribe to post (I verified this myself with a personal account).  We're discussing changing this on the comm...@chromium.org list.
 



PhistucK

To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev+unsubscribe@chromium.org.



--

Wez

unread,
Mar 15, 2018, 4:18:04 PM3/15/18
to Rick Byers, Ojan Vafai, Mike Lawther, PhistucK, blink-dev, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
The new AltGraph modifier behaviour has been enabled by default in Chrome at Tip-of-Tree (i.e. M67).

Mike Lawther

unread,
Mar 19, 2018, 1:07:07 AM3/19/18
to Rick Byers, Ojan Vafai, Wez, PhistucK, blink-dev, Dave Tapuska, Gary Kacmarcik (Кошмарчик), Patrick Kettner
On Fri, Mar 16, 2018 at 2:12 AM Rick Byers <rby...@chromium.org> wrote:
On Wed, Mar 14, 2018 at 9:05 PM, Ojan Vafai <oj...@chromium.org> wrote:
LGTM3

Side note: my understanding of the moderation settings was just that the first post from a new address needed moderation. +Mike Lawther right?

That's true, but it's also true you must subscribe to post (I verified this myself with a personal account).  We're discussing changing this on the comm...@chromium.org list.
 

Yes, to curb the spam problem we had we had to require subscribing *and* first post moderation. For comparison, chromium-dev has been 'members-only' since forever, and last I looked the dev-platform@mozilla list also requires membership and first-post moderation. We wanted to keep blink-dev open as it's the list that non-members are more likely to be cc'ed in on, but unfortunately the spam problem got too big. 
 



PhistucK

To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.



--
Reply all
Reply to author
Forward
0 new messages