Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: iOS PWA, amount gets focused but no keyboard pops up when adding new transaction #2392

Open
1 of 5 tasks
judge opened this issue Feb 24, 2024 · 4 comments
Open
1 of 5 tasks
Labels
bug Something isn't working responsive Responsive/Mobile version user interface Related to the user interface

Comments

@judge
Copy link

judge commented Feb 24, 2024

Verified issue does not already exist?

  • I have searched and found no existing issue

Is this related to GoCardless, Simplefin or another bank-sync provider?

  • I have checked my server logs and could not see any errors there
  • I will be attaching my server logs to this issue
  • I will be attaching my client-side (browser) logs to this issue
  • I understand that this issue will be automatically closed if insufficient information is provided

What happened?

On iOS (either as a PWA or in Safari), when you tap New Transaction, the amount gets focused, but you cannot enter the amount because the keyboard does not appear. You have to unfocus and refocus the amount to be able to enter the amount. And then you cannot immediately focus on the payee or any other field. After you have entered the amount, if you tap on any of the next fields (payee or category), the amount gets unfocused first and then you have to tap again the field to select payee or category.

This flow makes entering transactions really slow and frustating. :( Is it possible to fix this? Thanks!

RPReplay_Final1708758501.mov

What error did you receive?

No response

Where are you hosting Actual?

Fly.io

What browsers are you seeing the problem on?

Safari

Operating System

Mobile Device

@judge judge added the bug Something isn't working label Feb 24, 2024
@Kidglove57
Copy link

I agree and indeed the mobile experience is still work in progress. I would be interested to know the reason for the current behaviour as I’m sure there is one, rather than an oversight.
You do get used to it and develop different muscle memory over time!

@joel-jeremy joel-jeremy added user interface Related to the user interface responsive Responsive/Mobile version labels Mar 4, 2024
@trevdor
Copy link
Contributor

trevdor commented Mar 8, 2024

  useEffect(() => {
    if (adding) {
      onTotalAmountEdit();
    }
  }, []);

https://github.com/actualbudget/actual/blob/master/packages/desktop-client/src/components/transactions/MobileTransaction.jsx#L492-L496

I see the convenience of the total amount being auto-focused if you intend to start by entering the amount.

Personally, though, I don't always start with Amount (for instance, if I've started the entry knowing the Payee/Category/etc but awaiting the total).
And right now the keyboard isn't showing on autofocus on iOS. (The first tap clears focus and a second tap triggers re-focus with the keyboard.)

❓ Does the keyboard show as expected on Android?

My preference would be to drop this useEffect and let folks tap any field for their first input, triggering the relevant keyboard.

Alternatively, I could see triggering the keyboard explicitly. Maybe manually firing focus of some kind on the <FocusableAmountInput>.

What do you think, @joel-jeremy?

@Teprifer
Copy link

Teprifer commented Mar 8, 2024

Android Firefox, keyboard appears as soon as the enter transaction page loads.

I think the auto selecting behaviour should remain, it's the first field on the page, and the amount is the one detail I'm actually trying to remember after having just made the purchase so it makes sense to enter it first.

@joel-jeremy
Copy link
Contributor

joel-jeremy commented Mar 26, 2024

This seems to be an issue with iOS (16 or lower) where programmatically focusing an element won't show the keyboard. It only shows when the focus is triggered by a user action: https://stackoverflow.com/a/74636176

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working responsive Responsive/Mobile version user interface Related to the user interface
Projects
None yet
Development

No branches or pull requests

5 participants