Bug? possible bug on IME lib (SetLengthFilter)

Douglas Farias

Expert
Licensed User
Longtime User
Hi. @Erel.

Hello how are you?
I'm trying to create a filter for an edittext and I came across a possible bug.

For example, I want edittext (ed1) to accept only letters (abcde). everything ok so far.
B4X:
ime.SetCustomFilter(ed1, ed1.INPUT_TYPE_TEXT, "abcde")

however I want this edittext to have a 3 character limit, nothing more. example: ABC
B4X:
ime.SetLengthFilter(ed1, 3)

But there is a bug, I don't know if it's on android, on lib or on B4A(ide).

When you open the keyboard to type, if I press any other letter on the keyboard, let's say, press the letter (Z) 5x, nothing is displayed on the screen, but the IME counts as a character, even though it does not appear on the screen.

Example.
I touched the edittext, opened the keyboard, pressed the letter (Z) 5x, nothing was displayed (the SetCustomFilter works ok), there is nothing in the ed1 field, so the letters (abcde) should work, but it doesn't work, the IME counts those previously pressed (Z) letters and does not let you add new ones.

So for it to work I have to delete the (invisible) letters (Z), press the delete button 5x for it to work, if I press the delete button 5x I can type the letters (abcde).

Wrong letters are counting in IME lenght, even not being on the screen (blocked letters).

this happens in new projects, B4A 11.80, Android 12

thx
 
Last edited:
Top