gong-gy / connectbot

Automatically exported from code.google.com/p/connectbot
Apache License 2.0
0 stars 0 forks source link

HTC_IME virtual keyboard does not work properly on HTC Hero #166

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Connect to a server
2. Start irssi (optional)
3. Try to write a foreign character such as ä

What is the expected output? What do you see instead?
It should print ä but it prints aä. Instead of õ it prints oö.

What version of the product are you using (you can see this by using Menu
-> About in the Host List)?
r346

What type of system are you trying to connect t
CentOS

Please provide any additional information below.

Original issue reported on code.google.com by thelinxswe on 15 Jul 2009 at 1:21

GoogleCodeExporter commented 8 years ago
Noticed some errors:
"Instead of õ it prints oö." should be "Instead of ö it prints oö."
Also, to print a foreign character, long-press the base character (a) then drag 
to
the actual character (ä) when a selection appears.

Original comment by thelinxswe on 15 Jul 2009 at 1:40

GoogleCodeExporter commented 8 years ago
I can't reproduce this on the Android Virtual Keyboard. Are you using a 
different IME?

Original comment by kenny@the-b.org on 15 Jul 2009 at 7:07

GoogleCodeExporter commented 8 years ago
I have a HTC Magic purchased in Sweden with the provider 3.

Original comment by thelinxswe on 15 Jul 2009 at 7:18

GoogleCodeExporter commented 8 years ago
I have the same problem. 
HTC Hero with orginal rom purchased in Sweden.
When you press and hold a key to get the alternatives like ! on a the result is 
a!
and when press and holding o the get ö I get oö.
Under Settings > Locale & text I've got the following settings:
Select Locale : English (Sweden)
> Touch Input 
Keyboard language : Swedish

Original comment by hedlund....@gmail.com on 4 Aug 2009 at 7:57

GoogleCodeExporter commented 8 years ago
Just as a datapoint, I'm seeing this issue with an HTC Hero purchased in the UK
(Orange version) with English locale and language. I'm also using r346.

I'm also seeing the button to change between letters and numbers/symbols (12#)
failing to work, rendering the symbols which are not present on the normal keys 
(such
as '|') entirely unreachable.

Original comment by gavanfan...@googlemail.com on 7 Aug 2009 at 2:09

GoogleCodeExporter commented 8 years ago
similar here; r346 SIM-free UK HTC Hero. Oddly, the 12# key does work fine, but 
mine
doesn't even contain '|'. This on the full QWERTY touchscreen kbd.

I do see the multiple chars on touch-and-hold to get the extra keys.

Original comment by cdmac...@gmail.com on 8 Aug 2009 at 11:52

GoogleCodeExporter commented 8 years ago
I have the same issue with an Orange HTC Hero. An additional problem is the 
button 
(12#) to switch to the number keyboard layout doesn't work. 

Suprisingly the . and the , both work as expected, if they are long-pressed 
they show a 
: and a ; respectively.

Original comment by dr.i.a.n...@gmail.com on 10 Aug 2009 at 9:24

GoogleCodeExporter commented 8 years ago
Issue 174 has been merged into this issue.

Original comment by kenny@the-b.org on 11 Aug 2009 at 5:53

GoogleCodeExporter commented 8 years ago
I'm not sure which IMEs you guys are using.

I was testing with the HTC_IME this morning and see that when you long press it
actually sends a backspace and then writes the character you select.

Could you guys try one of the newest builds from the main page here and see if 
it
helps your situation? Specifically build r390 or newer:

http://code.google.com/p/connectbot/downloads/list

Original comment by kenny@the-b.org on 12 Aug 2009 at 5:00

GoogleCodeExporter commented 8 years ago
I'm using the standard IME on my HTC Hero; I just tried r390, connected to 
"local".
Unfortunately, it seems worse than before: not only do I still get the 
preceding char
(i.e. no BS seems to occur) but I'm now geting double chars echoed.

i.e. where I previously saw "n-" for "-", I'm now seeing "nn--" for "-" :(

I'm also seeing 12# not work, as noted by http://code.google.com/u/gavanfantom/

Original comment by cdmac...@gmail.com on 12 Aug 2009 at 10:36

GoogleCodeExporter commented 8 years ago
Just to confirm, I'm seeing the same behaviour (see comment 10) on ssh to a 
remote
system, as well as "local".

Original comment by cdmac...@gmail.com on 12 Aug 2009 at 10:40

GoogleCodeExporter commented 8 years ago
Sorry, guys, I messed up the key-up events for VK users while trying to clear 
the
path for the VK. I fixed this in r393.

Original comment by kenny@the-b.org on 12 Aug 2009 at 10:47

GoogleCodeExporter commented 8 years ago
thanks Kenny. 

just tried r393: the double-echo has gone, but the previous issues remain:

- no BS, so press-and-hold 'n' to get '-' gives: "n-"

- 12# button doesn't switch to numeric/char keyboard

both for "local" and "ssh" remote.

Original comment by cdmac...@gmail.com on 12 Aug 2009 at 10:56

GoogleCodeExporter commented 8 years ago
So on the SIM-free UK Hero the HTC_IME doesn't send the backspace as it does (in
newer versions?). I imagine this is a bug in an older version of HTC_IME. Can 
you
tell me what the md5sum or sha1sum of the HTC_IME.apk is from your phone?

The Orange HTC Hero sounds like it has an even more serious bug. Functions that
shouldn't have any interaction with the application at all (pressing the "12#"
button) are failing.

I tried writing HTC to request some help from them in resolving these bugs, but 
they
pretty much didn't understand what I was saying at all. I might try writing it 
in
Chinese next time:

My inquiry: "I have been getting multiple reports from users of ConnectBot, SSH 
for
Android, that the HTC_IME does not work correctly. Is there any way I could 
have a
dialog with developers of this IME? It seems to be violating the guidelines set 
forth
by Google."

HTC's reply: "Hello Kenny,

Thank you for your inquiry about HTC IME for Android.

Since you did not explain, I assume that you are referring to an Input Method 
Editor.
I cannot arrange for you to be in contact with any of our developers. If you 
have
questions regarding Android, I suggest starting in the android community for 
developers.

To address your concerns about Google’s guidelines, I can only send your 
message as a
special request to our headquarters. It will be up to someone within the 
headquarters
to decide how to address your concerns. HTC Technical Support cannot assist you
beyond that.

I hope that we have addressed your question in detail.

HTC Technical Support"

Original comment by kenny@the-b.org on 13 Aug 2009 at 12:51

GoogleCodeExporter commented 8 years ago
Not sure how I can actually find out the checksum; i can't even type an '/'. If
appmanager had copied it to SD, I could have done it that way, but it doesn't 
seem to
backup HTC apps.

Note that the 12# issue applies to my sim-free Hero, too, not just the Orange 
one.

What I've now discovered is that the IME comes up in whatever mode it was in 
from
another app, and is then locked in that mode, with the 12 or ABC button doing 
nothing.

And I'm not trying to be funny, but it does only do this in ConnectBot... :)

Original comment by cdmac...@gmail.com on 13 Aug 2009 at 1:25

GoogleCodeExporter commented 8 years ago
The "12#" key and the application should be disjoint. It's like saying your 
toilet
won't flush when you close your left eye... er, or something similarly 
nonsensical.

The only thing I can think of is maybe it's inspecting TerminalView's input
connection state and not handling a condition correctly. It might be throwing an
exception that's either caught and displayed in logcat or it silently eats.

Original comment by kenny@the-b.org on 13 Aug 2009 at 1:52

GoogleCodeExporter commented 8 years ago
:)

ok, well lemme know if there's any more I can do...

Original comment by cdmac...@gmail.com on 13 Aug 2009 at 1:55

GoogleCodeExporter commented 8 years ago
You can try the LatinIME.apk which is the IME that Google built. I've attached 
it.
It's from the master branch of the Android Open Source Project, so let me know 
if it
works for you as a work-around.

Original comment by kenny@the-b.org on 13 Aug 2009 at 2:03

GoogleCodeExporter commented 8 years ago
Is that going to replace the existing IME, or just add a new one that I can 
select?
Can I restore the existing behaviour once I've installed Latin?

Original comment by cdmac...@gmail.com on 13 Aug 2009 at 2:06

GoogleCodeExporter commented 8 years ago
It will add another one you can select. In the LatinIME, you can hold down the
lower-left button and it will pop up the IME selection screen. I'm not sure how 
to do
this with HTC_IME, though. If all else fails, you can disable "Touch Input" 
under
Settings -> Locale & Text.

To enable LatinIME, you'll need to enable "Android Keyboard" under Settings -> 
Locale
& Text as well.

Original comment by kenny@the-b.org on 13 Aug 2009 at 2:28

GoogleCodeExporter commented 8 years ago
"Android keyboard could not be installed on this phone" :(

Original comment by cdmac...@gmail.com on 13 Aug 2009 at 2:36

GoogleCodeExporter commented 8 years ago
Im having a similar issue mt self on my htc hero uk orange i cant seem to type 
any numbers when im 
sshd in my system has numbers in its path eg /volume1/ however 1 apears as q 
then after that my 
option to change to one is shown

Original comment by wmitch...@gmail.com on 14 Aug 2009 at 7:19

GoogleCodeExporter commented 8 years ago

Original comment by kenny@the-b.org on 14 Aug 2009 at 11:32

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
t-mobile uk G2-touch / htc hero running 1.0.0.A6288

tested with ConnectBot-svn-r396-english.apk

holding "n" and selecting "-" results in "n-"

pressing 12# does nothing
choosing a alternate keyboard does nothing
pressing and holding 12# and selecting "-" results in "-"

Ive grabbed the IME off the phone and attached it.

MD5 (HTC_IME.apk) = 8635118f9e74932fe6a0176dce7c2c0a

Original comment by paul.cha...@gmail.com on 14 Aug 2009 at 3:52

Attachments:

GoogleCodeExporter commented 8 years ago
Same problems here on a Swedish HTC Hero. But more importantly, when I tried 
out the application 
Nav4all (in market) I got the exact same problem with HTC_IME.

Original comment by ank...@gmail.com on 14 Aug 2009 at 4:18

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Tried installing LatinIME:

$ adb install LatinIME.apk 
1020 KB/s (239622 bytes in 0.229s)
    pkg: /data/local/tmp/LatinIME.apk
Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]

logcat output:

D/PackageParser(   63): Scanning package: /data/app/vmdl57744.tmp
W/Resources(   63): Converting to int: TypedValue{t=0x3/d=0x11 "Donut" a=-1}
W/PackageParser(   63): /data/app/vmdl57744.tmp
W/PackageParser(   63): java.lang.NumberFormatException: unable to parse 
'Donut' as
integer
W/PackageParser(   63):     at java.lang.Integer.parse(Integer.java:385)
W/PackageParser(   63):     at java.lang.Integer.parseInt(Integer.java:374)
W/PackageParser(   63):     at
com.android.internal.util.XmlUtils.convertValueToInt(XmlUtils.java:121)
W/PackageParser(   63):     at 
android.content.res.TypedArray.getInt(TypedArray.java:201)
W/PackageParser(   63):     at
android.content.pm.PackageParser.parsePackage(PackageParser.java:683)
W/PackageParser(   63):     at
android.content.pm.PackageParser.parsePackage(PackageParser.java:285)
W/PackageParser(   63):     at
com.android.server.PackageManagerService.installPackageLI(PackageManagerService.
java:3703)
W/PackageParser(   63):     at
com.android.server.PackageManagerService.access$1500(PackageManagerService.java:
104)
W/PackageParser(   63):     at
com.android.server.PackageManagerService$5.run(PackageManagerService.java:3251)
W/PackageParser(   63):     at android.os.Handler.handleCallback(Handler.java:587)
W/PackageParser(   63):     at android.os.Handler.dispatchMessage(Handler.java:92)
W/PackageParser(   63):     at android.os.Looper.loop(Looper.java:123)
W/PackageParser(   63):     at android.os.HandlerThread.run(HandlerThread.java:60)
D/AndroidRuntime( 5080): Shutting down VM

Original comment by paul.cha...@gmail.com on 14 Aug 2009 at 5:34

GoogleCodeExporter commented 8 years ago
cant see anything relevant in the logcat output when i press the 12# key or 
when I
select a different keyboard from the touch input settings menu

Original comment by paul.cha...@gmail.com on 14 Aug 2009 at 5:46

GoogleCodeExporter commented 8 years ago

Original comment by kenny@the-b.org on 14 Aug 2009 at 5:58

GoogleCodeExporter commented 8 years ago
Here's the LatinIME.apk from the Google emulator. It should be cupcake and not 
donut.

Original comment by kenny@the-b.org on 14 Aug 2009 at 6:02

Attachments:

GoogleCodeExporter commented 8 years ago
That one fails to install as well:

Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]

E/PackageManager(   63): Package com.android.inputmethod.latin has no 
signatures that
match those in shared user android.uid.shared; ignoring!
W/PackageManager(   63): Package couldn't be installed in
/data/app/com.android.inputmethod.latin.apk

I will grab the source and try and figure out how to build a signed version.

Interestingly the 12# key and changing keyboards both work while a
"keyboard-interactive authentication" text entry prompt is available. Does that 
help
at all?

Original comment by paul.cha...@gmail.com on 14 Aug 2009 at 6:09

GoogleCodeExporter commented 8 years ago
The password box is a normal input box and it works just like in other 
applications. The problem seems 
to appear when the input from the IME is used for some custom action - in this 
case it is sent directly 
over the network. I'm not that familiar with development on android, but that 
it looks like for me since 
Nav4all used some strange input field when I got the same misbehavior there.

Original comment by ank...@gmail.com on 14 Aug 2009 at 6:24

GoogleCodeExporter commented 8 years ago
Same here: unbranded german htc hero. And same issues with better terminal 
emulator..

Original comment by dickeplatte@gmail.com on 15 Aug 2009 at 12:16

GoogleCodeExporter commented 8 years ago
Quick workaround: hide the virtual keyboard and unhide it. After that its 
working. Im using the latest 
398 svn version. Hope this helps the devs too. 

Original comment by dickeplatte@gmail.com on 15 Aug 2009 at 7:59

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
thanks; that seems to sort out the upper shifted chars, indeed. It doesn't fix 
the
12# key though, for me, either for single-press to change the numeric, or to 
hold.
the latter now gives the special char, but overwrites the preceding char.

progress, though, thanks :)

Original comment by cdmac...@gmail.com on 15 Aug 2009 at 9:52

GoogleCodeExporter commented 8 years ago
I have the same issue (oö instead of ö) on an unlocked Finnish Hero, but can 
also confirm it works with the 400 
svn AFTER minimizing kb once and opening again. 12# still does nothing, but I 
ran into that in some other 
application as well...

Original comment by joakim.c...@gmail.com on 23 Aug 2009 at 6:59

GoogleCodeExporter commented 8 years ago
Hi I have the same issue on my T-Mob G2 no 12#. The only work round was to 
switch to 
the compact QWERTY but then I can't get \ and it is a lot more work to type. If 
it 
is any consolation all the other terms on market are the same or worse.

Original comment by st.scot...@gmail.com on 26 Aug 2009 at 10:37

GoogleCodeExporter commented 8 years ago
T-Mobile G2 branded HTC Hero (1.5) .ConnectBot (1.5.4 r346) VKB operates as it 
should when working with the GUI, but once connected to a remote server the 
upper 
shifted chars appear with their un-shifted chars appended, '1' appears as a q1 
etc 
etc . Compact QWERTY is too slow as a work around. Shame 'cos this is so close 
to 
being a perfect app. 

Original comment by yorkiero...@gmail.com on 26 Aug 2009 at 12:18

GoogleCodeExporter commented 8 years ago
Roger's branded Magic with Hero 1.5 rom (xda-developers) and ConnectBot r404.  
The
HTC Hero rom has the HTC_IME virtual keyboard and I'm getting the exact same 
issues
as these other fellows.  Long pressing q, trying to input a 1, gives q1.  
Pressing
the 12# key does nothing.  Bummer cause I cannot sudo, there is a number in my 
password!

Original comment by ReeeYe...@gmail.com on 27 Aug 2009 at 12:21

GoogleCodeExporter commented 8 years ago
I've been having a play with ConnectBot on my Hero since getting one this week. 
 My 
Hero is running 1.5 and a locally-built ConnectBot r403.

While prompted for the password during the connection to the server, the 
keyboard 
works properly, including entering numbers.  As others have said above, you can 
get 
a slightly better keyboard - here are the exact steps:

When connected to the server, you need to close the keyboard if it's open as 
the 
keyboard left open gives the "q1" issues (it doesn't give a backspace character 
between the "q" and "1").  Next, tap the screen and a keyboard icon will appear 
in 
the bottom right hand corner - tap on it.

You'll get a new keyboard up, which in my experience works correctly for 
entering 
numbers and special characters (it correctly issues the backspace, deleting the 
"q").  What doesn't work though is switching to the numeric keyboard (the 12# 
button).

Original comment by dominic.cleal@gmail.com on 27 Aug 2009 at 8:02

GoogleCodeExporter commented 8 years ago
After a bit more digging, I've come up with the following.  To fix the issue 
after 
pressing the keyboard icon where the 12# button doesn't work, the inputType of 
the 
editor needs changing from NULL to TEXT - see 
b166_r404_fix_keyboard_switch.patch.

This makes the popup soft keyboard work, but I still have a bit of an odd issue 
after entering a password.  The password popup leaves the keyboard open and it 
seems 
to leave the spelling correction/autocompletion mechanism on, which is a bit of 
a 
pain for SSH.

Closing the keyboard and opening it again through the keyboard icon turns these 
features off again.  One way to work around it is to force the keyboard closed 
after 
entering the password, but I'm not sure it's the best solution - see 
b166_r404_hide_kb_prompt.patch.

Original comment by dominic.cleal@gmail.com on 27 Aug 2009 at 10:34

Attachments:

GoogleCodeExporter commented 8 years ago
I'll have to check those changes against other IMEs, because it might break 
them.

Have you tried doing inputManager.restartInput(...) instead of hiding the IME? 
That
would be more acceptable to all existing IMEs, I think.

Original comment by kenny@the-b.org on 28 Aug 2009 at 12:37

GoogleCodeExporter commented 8 years ago
Setting it to EditorInfo.TYPE_CLASS_TEXT shows the candidates view constantly 
in the
Google-supplied LatinIME, so that won't work.

Original comment by kenny@the-b.org on 28 Aug 2009 at 12:54

GoogleCodeExporter commented 8 years ago
Wow amazing, thanks dominic!  I pulled down the latest r404 and added in your 
first
patch and I can now switch to numbers (12#).  I do get the completion thing 
that you
mentioned, and if I close/open the keyboard that stops.

I tried your second patch but it did not automatically close the keyboard upon
logging in.  I wonder why... Either way I can finally use ConnectBot!

Original comment by ReeeYe...@gmail.com on 28 Aug 2009 at 11:12