Keydown and keyup events are buggy on Anniversary update

Confirmed Issue #9021586 • Assigned to Alexander W.

Details

Author
Arcadio G.
Created
Sep 22, 2016
Privacy
This issue is public.
Found in
  • Microsoft Edge
Found in build #
14.14393
Reports
Reported by 34 people

Sign in to watch or report this issue.

Steps to reproduce

Repro URL: http://demos.playfuljs.com/raycaster/

 

There is definitely an issue here - Chrome is quite responsive on this site, while Edge is not even really usable at all. The body is only listening for keyup, keydown, touchstart, touchmove, and touchend so the input handling is fairly simple, even if the rest of the site is intensive.

 

The “keydown” event has a significant delay when holding a key, and “keyup” sometimes doesn’t happen until another key is pressed. This happens only on the Anniversary Update (doesn’t happen in 10586 or other browsers), and only in complex apps/games that use a significant amount of resources, a simple test case will work fine. This is an example: https://arcadiogarcia.github.io/EdgeInputBug/default.html , the input will work fine on 10586 or FF/Chrome, but it will be laggy and keyup events will be missing on Edge on 14393.

Attachments

0 attachments

    Comments and activity

    • Microsoft Edge Team

      Changed Assigned To to “Brad E.”

      Changed Assigned To to “Sermet I.”

    • I found that the same bug also happens in one of the games presented to the js13k game tournament: http://js13kgames.com/games/glitch-buster/index.html

    • The example on this site worked perfectly until the anniversary update.

      http://www.playfuljs.com/a-first-person-engine-in-265-lines/

    • Microsoft Edge Team

      Changed Steps to Reproduce

      Changed Assigned To from “Sermet I.” to “Alexander W.”

      Changed Status to “Confirmed”

    • There is a chance that this will be fixed?
      In the bug tracker are almost no corrections over the last two months, and the number of bugs increases.

    • This bug is pretty awful. It makes any web game unplayable with the keyboard.

    • Delay in response to key strokes and then sticky keys is pretty awful in Commander Keen too. It’s extremely frustrating and has cost me many lives!

    • Here is an example https://deck.itch.io/quest-for-glory
      keyboard input works fine in all the browsers except Edge (as described: The “keydown” event has a significant delay when holding a key, and “keyup” sometimes doesn’t happen until another key is pressed.)
      Pls fix. Thanks

    • I have the same issue with the engine I have designed. http://jasonjhayes.azurewebsites.net/MazeWalker
      The issues is not present in the other browsers I have tested (Chrome, Firefox and Safari).

    • We experience this issue too for Unity WebGL content.

      A customer sent us this small fiddle repro https://jsfiddle.net/cronostop/5cf7xmk3/

      We’d appreciate a fix for this for sure especially since Edge is otherwise quite good with running our WebGL content. Thanks!

    • Yep, Also waiting for a fix. It appears that universal apps also have this problem since I ported JS/HTML5 app using VS. Chrome, IE, Firefox all ok!
      Maybe this is how Edge is getting good battery benchmarks? by dropping its standards… :|

    • Same problem in Edge and Universal apps using HTML 5 and Javascript.

    • Same problem is apparent here in demo #7 when using MS Edge:

      http://www.timetocode.org/

      Demo #7 uses keyboard events to control the jet, gun, and shields on the center puck. It feels like the controls are sticky. Sometimes controls get stuck for multiple seconds.

      The multiplayer client at this site might shed some light on the source of the problem. The multiplayer client has no Canvas animation loop (no calls to requestAnimationFrame). It collects mouse and keyboard events and sends them to a node server which forwards them via socket.io to the host. This effectively separates keyboard events from the animation loop. The problem is not apparent in this situation.

    • Reproducible on all test devices we have, on Edge only. Makes web games unplayable.

    • My application works perfectly in Chrome, Firefox, MSIE. But is unusable in Edge for this reason (Edge sometimes hangs after answering a few questions on a maths test). This is a serious issue and I expect it to get serious attention — my server identifies Web browsers, and until this is fixed, I will be notifying users of this system that they should use another browser!
      https://aaabit.com/Times-tables

    • Same problem. My Unity WebGL game is unplayable with the keyboard in EDGE. Please fix!

    • Any updates on this? Issue is still reproducible.

    • Any updates or fix schedules?
      I found a condition to reproduce this.
      The condition is low spec device or anything stress on MSEdge browser(ex. game).

      This is an reproduce code: https://jsfiddle.net/4wfupr13/
      How to reproduce

      1. use a low spec machine. I use ASUS TransBook Mini T102A(Atom x5-Z8350, Mem 4G, Win10 Home)
      2. open this jsfiddle site and open Edge dev tool window.
      3. press some key short time and check key press status is good(pressed: true, released: false)
      4. press some key long time and check key press status will be bad(released but pressed status).

      Please fix!

    • It’s finally fixed in the Creators Update! \o/
      (Tested on Enterprise 10.0.15063)

    • yeah it’s fixed in the creators update. finally!!

      … I think it’s not good practice to go silent on bug reports & don’t communicate with us at all :’(
      … but I had the same experience in the past, when submitting a bug for ie11
      (pointer events were not working - pointer up was fired even though the pointer was still pressed)

      microsoft, you could do better!

    • Even if some comments say so, this bug is not yet fixed in the Creators update. Since performance in Edge has been improved, the CPU usage threshold to be able to reproduce it has been increased, but it can still be reproduced with enough load. (See http://clockworkbridgesdemo.azurewebsites.net/webbridgeuploads/Treasure%20Time/)

    • The issue described in my Feb 16, 2017 comment has been resolved with the Creators Update.

    • I confirm that this bug is not fixed yet !!! https://jsfiddle.net/cronostop/5cf7xmk3/

    • On webGL mode … BUG IS NOT FIXED … C O N F I R M E D

    You need to sign in to your Microsoft account to add a comment.

    Sign in