-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
button styling fixed #3193
button styling fixed #3193
Conversation
Requesting review @shawnborton |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apart from my comment about i18n, this looks ok to me but I'd love @marcaaron's opinion on it.
style={[styles.textInput]} | ||
value={this.state.searchValue} | ||
onChangeText={this.changeSearchValue} | ||
placeholder="Search" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't this get translated too ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, it should be. But It does not come under the scope of this PR. Anyways happy to do this change. Let me know, if I should do this change as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you please add it ? That way we don't forget about it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pushing a commit right away.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Dal-Papa Code pushed. Thanks.
I am not sure about it. It totally depends on the Branding. I think we should raise this point on the Slack. @shawnborton |
Well that is indeed the branding that we have designed, it just hasn't been implemented correctly. But I understand that this isn't technically part of the work we asked you to do, so we can open up a separate issue to address the button inconsistencies. |
@shawnborton feel free to drop a comment in #expensify-open-source by saying something like |
Updated. Marc is on leave till Monday. Maybe we can have it reviewed by someone else. Thanks. |
@roryabraham mind giving this a quick look to be safe please ? 🙏 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@roryabraham Are we good here? Thanks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left a few notes but overall looks good
@Jag96 Done. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall this PR leaves me wondering if we can make some reusable components to make some of this stuff easier in the future, something like this (in psuedocode):
const ViewWithFixedButtonFooter = props => (
<>
<ScrollView style={[styles.flex1, styles.w100]}>
{this.props.children}
</ScrollView>
{this.props.shouldShowButton && (
<FixedFooter>
<Button
success={this.props.buttonSuccess}
onPress={this.props.onButtonPressed}
style={styles.w100}
text={this.props.buttonText}
/>
</FixedFooter>
)}
</>
)
const PageWithFixedButtonFooter = props => (
<ScreenWrapper>
{({didScreenTransitionEnd}) => (
<>
<FullScreenLoadingIndicator visible={!didScreenTransitionEnd} />
{didScreenTransitionEnd && (
<KeyboardAvoidingView>
{this.props.shouldShowHeader && (
<HeaderWithCloseButton />
)}
<ViewWithFixedButtonFooter>
{this.props.children}
</ViewWithFixedButtonFooter />
</KeyboardAvoidingView>
)}
</>
)}
</ScreenWrapper>
)
src/pages/iou/IOUModal.js
Outdated
selectedAmount={this.state.amount} | ||
navigation={this.props.navigation} | ||
/> | ||
<IOUAmountPage |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All this indentation was correct, can we reset this back the way it was?
Yeah. It does look that a component can be extracted but I don't think it would be that much value as it seems. Let me have a close look at it to see if we have a pattern here. |
👋 heyo - is this on track to merge today? |
I am looking into extracting the code into common components but I feel like it requires some amount of time to carefully replace all the components. I can put a follow-up PR and I think we should merge this as it is working as it should be. But it's your call. |
@parasharrajat thanks for the context. Let's have @roryabraham weigh in if he didn't already before making a decision. But my 2 cents is we could decide this based on scope. If the addition you are describing is going to inflate scope significantly, my vote is to open a new PR. But if it's a part of the current scope then I agree with holding and keeping it contained in 1 PR for simplicity. |
Sorry for the delay here @parasharrajat, if you resolve the merge conflicts, retest, and it's all still working then I'd feel okay approving/merging. In my experience, all this stuff with |
@roryabraham I agree with the point to extract common components but currently, I feel a little overwhelmed. I would definitely look into abstracting them. I have updated the PR and let me know what would be the best step ahead. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No worries @parasharrajat! I'm sure you've got higher-priority stuff that you're assigned, and this is working. Let's just move on and work on new features and bug fixes. Maybe we can circle back on this if a similar issue arises in the future 😄
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
🚀 Deployed to staging in version: 1.0.68-5🚀
|
🚀 Deployed to production in version: 1.0.73-3🚀
|
Details
Fixed Issues
Fixes #3055
Tests | QA Steps
1.Open E.cash on Android and IOS.
2. Check all the above listed Pages.
3. Fixed Button button(if any) should always float over the keyboard.
Tested On
Screenshots
Web
Mobile Web
Desktop
iOS
button.mp4
Android
output.mp4