Uploaded image for project: 'Apache Guacamole - Contributions'
  1. Apache Guacamole - Contributions
  2. GUAC-659 Not all keys work on non-US keyboards
  3. GUAC-862

Implement keyboard event queue and retrospective heuristics

    XMLWordPrintable

    Details

    • Type: Development Task
    • Status: Done
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 0.9.3
    • Component/s: guacamole-common-js
    • Labels:
      None
    • Sprint:
      DEV 2014-09-26

      Description

      The current heuristics of Guacamole.Keyboard are insufficient for current browser behavior, namely:

      1. AltGr vs. Ctrl+Alt and associated ambiguity
      2. Accuracy and inaccuracy of e.keyIdentifier (usually incorrect, doesn't always take Shift or Caps Lock into account)
      3. Accuracy, but occasional unavailability, of e.key
      4. Accuracy, but unpredictability, of keypress
      5. Lack of keyup for printable characters in when Meta is being held

      I believe a better approach would be to adopt an internal queue of key events, where each event is essentially a stripped-down copy of keydown/keypress/keyup. Pattern matching similar to regex could then be applied to the front of this queue, removing sets of keys which are known to represent specific keysyms, and keeping ambiguous combinations until time or further events narrow the possibilities.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              mike.jumper Michael Jumper
              Reporter:
              mike.jumper Michael Jumper
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: