Closed isagoico closed 8 months ago
Triggered auto assignment to @anmurali (Bug
), see https://stackoverflow.com/c/expensify/questions/14418 for more details.
Figma file is here in case that's helpful.
UI - Enhance currency selection in Number Pad Page
New Featureβ¨
β¨We will render a caret in CurrencySymbolButton
here: https://github.com/Expensify/App/blob/889051cf6c155c225a9c602c17d95ec40d740839/src/components/CurrencySymbolButton.tsx#L27
We'll increase the area covered by PressableWithFeedback
here: https://github.com/Expensify/App/blob/889051cf6c155c225a9c602c17d95ec40d740839/src/components/CurrencySymbolButton.tsx#L22
to make the hitbox bigger and easier to select.
@anmurali Whoops! This issue is 2 days overdue. Let's get this updated quick!
Current assignee @anmurali is eligible for the NewFeature assigner, not assigning anyone new.
Job added to Upwork: https://www.upwork.com/jobs/~013f662f491f2cca37
Triggered auto assignment to Contributor-plus team member for initial proposal review - @jjcoffee (External
)
The currency selection in the number pad page is not intuitive, users do not realize at first that the area is clickable.
Unclear UI, nothing currently exists to indicate that the user can click to change the currency.
Using the existing Icon component and the "DownArrow" Icon, we can render the caret in a similar way to the ButtonWithDropdownMenu.tsx
component. The icon can be placed here in the CurrencySymbolButton.tsx
file, above the text component.
Also necessary to add flex styling for proper alignment. No need to update the hitbox as long as the icon is contained within the existing pressable component.
Img showing changes on local dev environment (exact width can be updated once access to figma is given):
Considered removing the pressable behaviour from the text and only having the caret be pressable. But decided it would be better to keep that existing functionality and just combine it with the new caret.
π£ @BryceAltman! π£ Hey, it seems we donβt have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork. Please follow these steps:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>
Contributor details Your Expensify account email: bryce.altman@gmail.com Upwork Profile Link: https://www.upwork.com/freelancers/~0111c8051f543f4fd4
β Contributor details stored successfully. Thank you for contributing to Expensify!
Add caret icon for currency selection
New feature
1) Add DownArrow
icon as the first child of the PressableWithoutFeedback
to show icon.
<Icon
small
src={Expensicons.DownArrow}
fill={theme.icon}
/>
2) To display content in the center of the row add those styles to the PressableWithoutFeedback
.
style={[styles.dFlex, styles.flexRow, styles.alignItemsCenter, styles.gap1]}
Make sure currency selection button is visually prominent and easily tappable
Add a view component only child to PressableWithoutFeedback
, since ideally pressable should have only one direct child
Set minWidth
of 48 units to make sure the pressable is always roughly the size of a finger tip
Add a DownArrow
icon component before Text
Update View styling to be row, centered vertically and horizontal justifyContent
should be flex-end
, flex-end would make sure button content do not add un-necessary gap towards right if ever inner content width is below minWidth
limit.
Target code snippet that will be changed https://github.com/Expensify/App/blob/1b1eeb81cf1dd3b439b53b94abf4c476c792aa74/src/components/CurrencySymbolButton.tsx#L22-L28
Component to be added to snippet
styling to be used from utils/flex.ts
style creation in utils/sizing.ts
mnw48: {
minWidth: 48,
}
Final proposed structure of code snippet
<PressableWithoutFeedback>
<View>
<Icon />
<Text />
</View>
</PressableWithoutFeedback>
please re-state the problem that we are trying to solve in this issue- The issue is to enhance the currency selection in number pad page What is the root cause of that problem?- It's the UI issue which is not letting users to find currency easily on single tap and due to unresponsive nature of the UI What changes do you think we should make in order to solve the problem?- We should change the UI for the currency so that users can easily tap and find the currency to change. We should be more precise on this. What alternative solutions did you explore? (Optional)- We can give a box with currency change so that users can easily get this currency selection. We can also get more alternatives from our UI team to suggest you more better.
π£ @Kunj3093! π£ Hey, it seems we donβt have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork. Please follow these steps:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>
Contributor details: Owebest Technologies, Kuldeep Sharma. Your Expensify account email: kuldeep.owebesttech@gmail.com Upwork Profile Link: https://www.upwork.com/agencies/owebest/
Reviewing tomorrow!
Triggered auto assignment to @dangrous, see https://stackoverflow.com/c/expensify/questions/7972 for more details.
Yep, I agree with that - I appreciate the additional detail in @BryceAltman's proposal so that it's crystal clear what the plan is (for example, specifying using a DownArrow
Icon element as the caret).
π£ @jjcoffee π An offer has been automatically sent to your Upwork account for the Reviewer role π Thanks for contributing to the Expensify app!
π£ @BryceAltman You have been assigned to this job! Please apply to the Upwork job and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review π§βπ» Once you apply to this job, your Upwork ID will be stored and you will be automatically hired for future jobs! Keep in mind: Code of Conduct | Contributing π
Thanks! PR will be up today for this one
PR is up here - link
The caret is currently also visible on desktop as well as mobile. Just want to confirm if this is the expected behaviour? I believe it adds value as well on larger screens as well as smaller screens.
However if you would like it hidden on desktop just let me know and I can easily hide and make it mobile only.
Thanks! :)
@BryceAltman I don't think there was any discussion around making this mobile-only, so what you've implemented sounds good. Thanks for checking though!
Reviewing
label has been removed, please complete the "BugZero Checklist".
The solution for this issue has been :rocket: deployed to production :rocket: in version 1.4.40-5 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:
If no regressions arise, payment will be issued on 2024-02-20. :confetti_ball:
For reference, here are some details about the assignees on this issue:
BugZero Checklist: The PR adding this new feature has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
I still haven't been assigned the job on upwork, who can I raise this with?
Sent you the offer @BryceAltman , thanks for your patience here!
Sent you the offer @BryceAltman , thanks for your patience here!
Sorry I just realised the regression period is still active, thank you for assigning so quickly though!
Triggered auto assignment to @sonialiap (Bug
), see https://stackoverflow.com/c/expensify/questions/14418 for more details.
Payment not due for another 4 days but I will be OOO, so I rotated the label to assign another BZ member to pay.
No regressions π
@BryceAltman $500 - paid βοΈ @jjcoffee $500 - paid βοΈ
https://github.com/Expensify/App/issues/35170#issuecomment-1942142149 [@jjcoffee] Please propose regression test steps to ensure the new feature will work correctly on production in further releases.
Regression Test Proposal
Do we agree π or π
I'd add a step to tap on it and make sure it works as expecte
UI - Enhance currency selection in Number Pad Page
Problem
Changing the currency in the big number pad page is not that intuitive and it's currently not very responsive in the Native app (specifically Android). This leads to users often needing multiple tries to successfully open the currency list, impacting the overall user experience.
Solution
Improve the user interface by adding a down-facing caret so users can easily identify where they need to tap to alter the currency. This should guide users on reaching the currency list on the first attempt.
Thread: https://expensify.slack.com/archives/C049HHMV9SM/p1705889957656699 Reported by: @jliexpensify
Votes were taken in the thread and π₯ is the winner π
Upwork Automation - Do Not Edit