Menu

#387 Alt key seems to set META_META_ON rather than META_ALT_ON in metaState

FixInTest
nobody
None
Medium
Defect
2013-12-22
2013-12-08
Anonymous
No

Originally created by: iiordanov@gmail.com

I develop bVNC, aRDP, and aSPICE. I noticed that something may be wrong with the metaState that is set by Hacker's keyboard.

Q. What steps will reproduce the problem?

A. In a program that captures onKey(), print out the KeyEvent's that result from pressing ALT-F4

What is the expected behavior?
KeyEvents with metaState=META_ALT_ON|META_ALT_LEFT_ON.

What do you see instead?
KeyEvent { action=ACTION_DOWN, keyCode=KEYCODE_ALT_LEFT, scanCode=0, metaState=META_META_ON|META_META_LEFT_ON, flags=0x0, repeatCount=0, eventTime=1386554071141, downTime=1386554071141, deviceId=-1, source=0x0 } 57

KeyEvent { action=ACTION_DOWN, keyCode=KEYCODE_F4, scanCode=0, metaState=META_META_ON|META_META_LEFT_ON, flags=0x0, repeatCount=0, eventTime=1386554071143, downTime=1386554071143, deviceId=-1, source=0x0 } 134

KeyEvent { action=ACTION_UP, keyCode=KEYCODE_F4, scanCode=0, metaState=META_META_ON|META_META_LEFT_ON, flags=0x0, repeatCount=0, eventTime=1386554071144, downTime=1386554071144, deviceId=-1, source=0x0 } 134

KeyEvent { action=ACTION_UP, keyCode=KEYCODE_ALT_LEFT, scanCode=0, metaState=META_META_ON|META_META_LEFT_ON, flags=0x0, repeatCount=0, eventTime=1386554071144, downTime=1386554071144, deviceId=-1, source=0x0 } 57

Q. What version of Hacker's Keyboard are you using? (See "Debug" section at
the bottom of the app's Settings menu.)

A. v1.33.1332

Q. On what phone or tablet?

A. Nexus 4

Q. If applicable, does this affect the 4-row or 5-row layout, or both? Which
language(s)?

A. I've tested English, and it affects both Portrait and Landscape.

Discussion

  • Anonymous

    Anonymous - 2013-12-08

    Originally posted by: iiordanov@gmail.com

    Hi, I think I've fixed the issue with the attached patch. Please ensure my work is correct.

    I used the values provided here:
        http://developer.android.com/reference/android/view/KeyEvent.html#META_ALT_ON
    to calculate the correct value of KeyEvent.META_ALT_ON | KeyEvent.META_ALT_LEFT_ON to be 0x12.

    The keyboard now produces expected metaState when Alt modifier is used.

     
  • Anonymous

    Anonymous - 2013-12-19

    Originally posted by: Klaus.We...@gmail.com

    Thanks for the fix - can you try v1.34rc15 (or later) to see if that works for you? It also includes a Meta/Command/Windows key in the full 5-row layout.

    https://code.google.com/p/hackerskeyboard/downloads/list

    Status: FixInTest

     
  • Anonymous

    Anonymous - 2013-12-20

    Originally posted by: Klaus.We...@gmail.com

    Please try 1.34rc17, earlier versions had inconsistent reporting of up/down events in multitouch mode.

    This now mostly works for me in bVNC, except that the Alt key suppresses the modified key in multitouch mode. It works as expected in sticky key mode (touch+release Alt, then touch+release other key). According to my keytest app the right key events seem to be generated, is this possibly an issue in your app?

    See also https://code.google.com/p/hackerskeyboard/downloads/detail?name=KeytestActivity-debug.apk

     
  • Anonymous

    Anonymous - 2013-12-20

    Originally posted by: iiordanov@gmail.com

    With v1.34rc17, the keyboard no longer sets META_META_* instead of
    META_ALT_*!

    There is an "issue" with bVNC where I was ignoring left Alt because it is
    used for symbol input on some hardware keyboards. I think this is causing
    what you're reporting. If you want to test, configure Hacker's keyboard to
    send right Alt key instead of left Alt key.

    In any case, I now ignore left Alt only if the deviceID == 0 (which seems
    to be the case for the default hardware keyboard on my G1 and G2 (yes, I
    still keep those around for testing ;). So in the next release of bVNC
    things should be pretty much seamless.

    Thanks for your responsiveness and help in debugging!

     
  • Anonymous

    Anonymous - 2013-12-21

    Originally posted by: iiordanov@gmail.com

    The latest version of bVNC, v3.4.1, works perfectly for me with H's K. Please try it and let me know if you can confirm.

    Thanks!

     
  • Anonymous

    Anonymous - 2013-12-22

    Originally posted by: jasminje...@gmail.com

    I tested v1.34rc17 with bVNC on my HTC Dsire S.
    Had not much time to check details, but the error I reported with ALT-F4 is gone.
    THX a lot for fixing this issue.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.