Uploaded image for project: 'Guacamole'
  1. Guacamole
  2. GUACAMOLE-447

Certain keys fail for external keyboards on iOS Safari

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 1.0.0
    • guacamole-common-js
    • None

    Description

      As reported by Greg on the mailing lists, external keyboards do not quite work correctly with Guacamole under iOS Safari:

      I’m trying to use Guacamole with an iOS device (I’ve tried both iPad and iPhone devices) with an IOGear GKB632B keyboard (https://www.iogear.com/product/GKB632B/)

      The problem is that Guac doesn’t seem to understand the keyboard mapping, particularly for the escape key (and I would guess other keys as well, but all I’m trying to do is use ‘vi’). On this keyboard When used through Safari on the iOS devices, the escape key generates a ‘U’ character. It works when connected to a MacBook.

      On further investigation, iOS Safari seems to be sending incorrect, platform-specific key identifiers for the failing keys:

      ... Here’s the result from the keypress tester:

      keydown e.keyCode=0	e.which=0	e.keyIdentifier=Unidentified	e.key=UIKeyInputEscape	e.altKey=false	e.ctrlKey=false	e.altGraphKey=false	e.metaKey=false e.shiftKey=false	e.location=0	e.keyLocation=0	
      keypress	e.keyCode=85	e.which=85	e.keyIdentifier=	e.key=UIKeyInputEscape	e.altKey=false	e.ctrlKey=false	e.altGraphKey=false	e.metaKey=false e.shiftKey=false	e.location=0	e.keyLocation=0	
      keyup	e.keyCode=0	e.which=0	e.keyIdentifier=Unidentified	e.key=UIKeyInputEscape	e.altKey=false
      

      So… looks kind of funny. The keycode reported is ’85’ which is the U character, but the key that’s reported is ‘UIKeyInputEscape’, which is clearly not ‘U’, and also not ESC (27). Googling ‘UIKeyInputEscape’ suggests that this is UIKit’s name for the escape key, but the keycode is wrong.

      It's possible that these identifiers simply need to be added to the list of known identifiers to work around the issue... or perhaps something else is going on.

      Attachments

        1. fix-ios-external-kb.mp4
          6.09 MB
          Greg Trasuk

        Issue Links

          Activity

            People

              mjumper Mike Jumper
              mjumper Mike Jumper
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: