PasswordTextBox.RequestFocus

Maybe I'm misunderstanding how this is supposed to work.
I'm having 3 PasswordTextBoxes: one for the old password, one for the new password and another one to confirm the new password. Actually, those passwords are PIN codes, but it shouldn't matter.
I can't use the TaifunTextBox to monitor what the user is typing while he is typing (because it only supports regular TextBoxes), so I must wait until the user touches another PasswordTextBox and then use the LostFocus event to check the contents of the previous PWDtextBox. So far no big deal. But when I discover that the contents of the first PWDtextbox is not OK, I show a notification about what's wrong and then use RequestFocus procedure for that first PWDtextBox.
Now it gets interesting: the first PWDtextBox gets a cursor at the end of the text (what I expected), but the 2nd PWDtextBox keeps the focus. When I start typing, the characters go to the 2nd PWDtextBox and the other cursor keeps happily blinking at the end of the string in the 1st PWDtextBox.
The really bad thing is that I can't even go back to the 1st PWDtextbox by touching it. The focus remains on the PWDtextbox wich caused the 1st one to loose focus.
Is this a bug or am I doing something wrong?

While we're at it: The screen also has a "Commit" button which triggers the transmission of the new PIN code to a microprocessor. I want to keep that button disabled until the PIN codes meet the requirements (like old PIN must be correct, new PIN must be different from the old one and confirmation PIN must be identical to the first version of the new PIN). The only way to detect that the user has completed the last step (entering a correct copy of the new PIN) is to touch something else to make the last PWDtextBox loose focus. The logical step for the user would be to hit the "Commit" button, but it is disabled. Catch 22. Any ideas? (Don't tell me to touch any of the other PWDtextboxes...)
Of course I can enable the button do all of checks in the button.clicked event, but that's like allowing the user to make a mess and tell him about it all the way at the end.

Try the other way (using gotFocus)

image

When I used this, the focus stayed on box1 until i had typed 6 characters, then I got focus on box2
(in actual fact the .GotFocus and if statement is working faster than the eye can see)

That does the job. Thank you.

Related to my 2nd problem: is there a way to detect that the user touched the checkmark in the lower right corner of the num keyboard? That could be used to confirm that the user has finished data entry.

image

Are you using an extension? Which one?

Which Android version ?

I have several extensions installed. Most recently PWTboxTool to enforce the use of the Num Keyboard with the PasswordTextBox.
My Android is 10 QKQ1. I hope whatever you have in mind works on any fairly recent version of Android.

image

Hmmm, unfortunately, that password extension doesn't have an event listener for the Enter Pressed event.

Only thing I can suggest is to work up a solution using textboxes. Will users have people looking over their shoulders as they enter their pins ?

You could set things to enter one number at a time and then clear it from the textbox, saving to a variable as you go, then run conditions on the variable?

It doesn't have to be super secure. I just like the idea of using a PasswordtextBox for a PIN.
Just looked at the textbox details. There is no Enterpressed Event. You probably suggest to use the TaifunTextBox extension for that?
I can do that. Probably a lot more straightforward that trying to stick with the PasswordTextBox...
Thanks for the advice.

Gilbert

Done a few blocks, following the one at a time idea. Third textbox shows result of a test for entries to first two textboxes, using event listener from Taifun's textbox extension. Data entry needs feedback though...

Note: you can only run the event listener on one textbox at a time (this should be evident from the blocks)

Why? Without knowing it, in my app I can listen to up to four text fields at the same time. I did not notice any problems.

Got it. Pragmatic approach vs. idealistic approach :wink:

Memory fails me now, but thought I remembered this was not possible.

Just for fun, and example, only using textboxes, that shows feedback. The actual textboxes used for number entry are sized to 1 pixel wide, and placed in a horizontal arrangement with another textbox, which is used to display "bullets" as numbers are entered. If a user touches one of the textboxes with bullets, it is cleared for re-entry.

And thanks to @Patryk_F, multiple use of the listener does work :wink:

BLOCKS

SCREEN

image image

AIA

flipfocus.aia (22.9 KB)

I had fun too, and I have a different method.
password_textbox_with_show_text.aia (25.3 KB)

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.