You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@guacamole.apache.org by "Michael Jumper (JIRA)" <ji...@apache.org> on 2017/11/28 08:23:00 UTC

[jira] [Created] (GUACAMOLE-447) Certain keys fail for external keyboards on iOS Safari

Michael Jumper created GUACAMOLE-447:
----------------------------------------

             Summary: Certain keys fail for external keyboards on iOS Safari
                 Key: GUACAMOLE-447
                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-447
             Project: Guacamole
          Issue Type: Bug
          Components: guacamole-common-js
            Reporter: Michael Jumper
            Priority: Minor


As [reported by Greg on the mailing lists|https://lists.apache.org/thread.html/8efe6e11b9ff53bd041eb970e7c672a9bc052648888eb6ffe2f1736d@%3Cuser.guacamole.apache.org%3E], external keyboards do not quite work correctly with Guacamole under iOS Safari:

{quote}
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.
{quote}

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

{quote}
... Here’s the result from the keypress tester:

{code:none}
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
{code}

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.
{quote}

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.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)