You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Swift, iPadOS version: all, FirebaseUI version: do not know exactly (Podfile.lock), Xcode: found it while testing
Steps:
Present view using VerificationCodeInputField (e.g. PhoneReauthView)
Focus OTP field on iPad with hardware keyboard
Press Return repeatedly
Observed: fields disappear one-by-one, unrecoverable without back+Verify
Expected: Return resigns/dismisses or no-ops, fields stay visible
Relevant: FirebaseSwiftUI/FirebaseAuthUIComponents/Sources/Components/VerificationCodeInputField.swift - BackspaceAwareTextField.Coordinator has no textFieldShouldReturn, shouldChangeCharactersIn only blocks non-digits but Return path can hit handleBackspace/clear.
The PR #1408 fixes VerificationCodeInputField so iPad hardware Return just resigns focus (textFieldShouldReturn → resignFirstResponder + return false) instead of mutating/clearing digit fields. I also removed the newline guard so pasting codes with trailing \n (from SMS/email) still works — the existing digitsOnly filter already blocks lone Return presses.
Happy to add a UI test for this in a follow-up PR.
Looking forward to your feedback!
Hi @amansingh1207, I couldn't reproduce this on main (iPad simulator, hardware keyboard, sign-in and PhoneReauthView): Return only reaches textFieldShouldReturn and never clears the fields.
Can you still reproduce it consistently? If so, please share your FirebaseUI and iPadOS versions, keyboard setup, and a short screen recording.
Activity
demolaf commentedon Oct 19, 2026
Hi @amansingh1207 , thanks for raising this. I see you've created a PR to fix this issue, I'll review that and keep this issue updated.
amansingh1207 commentedon Oct 20, 2026
Thanks @demolaf for taking a look!
The PR #1408 fixes VerificationCodeInputField so iPad hardware Return just resigns focus (textFieldShouldReturn → resignFirstResponder + return false) instead of mutating/clearing digit fields. I also removed the newline guard so pasting codes with trailing \n (from SMS/email) still works — the existing digitsOnly filter already blocks lone Return presses.
Happy to add a UI test for this in a follow-up PR.
Looking forward to your feedback!
demolaf commentedon Oct 20, 2026
Hi @amansingh1207, I couldn't reproduce this on
main(iPad simulator, hardware keyboard, sign-in andPhoneReauthView): Return only reachestextFieldShouldReturnand never clears the fields.Can you still reproduce it consistently? If so, please share your FirebaseUI and iPadOS versions, keyboard setup, and a short screen recording.