woocommerce-ios
woocommerce-ios copied to clipboard
[Shipping Label Creation] Distracting keyboard hide/restore when entering data into "Required" inputs.
Describe the bug
When the data for a given screen is missing, the merchant will be asked to fill it. Once the focus is set into the empty input, the keyboard is shown and the first character is entered, the keyboard will be hidden and showed again. It looks like this is so only for Required
fields, and not true for Optional
ones. It interrupts the process a lot, and I'd expect it to be quite frustrating for the merchant. Video for Ship to
screen:
https://user-images.githubusercontent.com/73365754/198989359-43611544-fd26-408c-a49b-593b329cba3c.MP4
The same will happen for Ship from
screen.
To Reproduce
- Initiate Shipping Label Creation flow
- On the very first screen (
Ship from
) erase the content from any required field (e.g.Name
) - Enter the first character and observe the described issue
Expected behavior
Same behaviour as for Optional
fields in the flow.
Mobile Environment Please include:
- Device: real iPhone 13 Pro / iPhone 14 Sim
- iOS version: 16.1 / 16.0
- WooCommerce iOS version: 11.0.0.0
Thanks for raising this issue! We have a bit of a workaround to handle the form validation when there's a change to the state of the form. It didn't cause an apparent glitch on iOS 15, but seems like it does now on iOS 16.
We'll need to come up with a more subtle way to handle the form validation then.
This causes greater issues with the split view for Orders. When the keyboard disappears while you're typing, it's easy to accidentally select another order in the list, which results in losing the progress on the shipping form.
@itsmeichigo have you had any thoughts on how this could be improved, by any chance?
Context: pdfdoF-4C0-p2#comment-5728