-
Notifications
You must be signed in to change notification settings - Fork 3k
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
[HOLD for payment 2023-03-06] [$1000] Emoji tops are being cut off in the personal message field on invite members page #14674
Comments
Job added to Upwork: https://www.upwork.com/jobs/~013ed57e2a5ae4cce2 |
Current assignee @garrettmknight is eligible for the External assigner, not assigning anyone new. |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @rushatgabhane ( |
Triggered auto assignment to @tylerkaraszewski ( |
Proposal It seems the height of the label needs to provide as paddingTop to avoid overlap issue. diff --git a/src/styles/styles.js b/src/styles/styles.js
index 4b1d1982ae..1835e7742d 100644
--- a/src/styles/styles.js
+++ b/src/styles/styles.js
@@ -772,11 +772,11 @@ const styles = {
},
textInputMultiline: {
- scrollPadding: '23px 0 0 0',
+ scrollPadding: '25px 0 0 0',
},
textInputMultilineContainer: {
- paddingTop: 23,
+ paddingTop: 25,
}, Issue After correct padding Other way is to remove the Note: Same issue exist for close account screen input also which will be resolved with this fix |
ProposalImpactThe issue is reproducible on all platforms. The components affected by this issue are those that make use of the
RCATo separate the text from the label, we set a Lines 778 to 780 in 3691c81
Lines 774 to 776 in 3691c81
Solution 1We can set the height of the label to be 23px. This is a relatively better solution because the style for diff --git a/src/styles/styles.js b/src/styles/styles.js
index 4b1d1982ae..fa36e795cc 100644
--- a/src/styles/styles.js
+++ b/src/styles/styles.js
@@ -744,7 +744,7 @@ const styles = {
position: 'absolute',
top: 0,
width: '100%',
- height: 25,
+ height: 23,
backgroundColor: themeColors.componentBG,
}, Solution 2We can set the diff --git a/src/styles/styles.js b/src/styles/styles.js
index 4b1d1982ae..c372011754 100644
--- a/src/styles/styles.js
+++ b/src/styles/styles.js
@@ -776,7 +776,7 @@ const styles = {
},
textInputMultilineContainer: {
- paddingTop: 23,
+ paddingTop: 25,
},
textInputAndIconContainer: { Results2023-01-31.20-31-27.mp4 |
ProposalWe need to change Lines 778 to 780 in 3691c81
Result: |
ProposalAs the others already explained, the height of the label is set to 25. We need to set the padding top of the text input container also to 25. But we also need to change the line height to 20, the same value we set to the composer. (the text is still being cut on mac with line height 16) diff --git a/src/styles/styles.js b/src/styles/styles.js
index 4b1d1982ae..04d643d8d4 100644
--- a/src/styles/styles.js
+++ b/src/styles/styles.js
@@ -763,7 +763,7 @@ const styles = {
baseTextInput: {
fontFamily: fontFamily.EXP_NEUE,
fontSize: variables.fontSizeNormal,
- lineHeight: variables.lineHeightNormal,
+ lineHeight: variables.lineHeightXLarge,
color: themeColors.text,
paddingTop: 23,
paddingBottom: 8,
@@ -776,7 +776,7 @@ const styles = {
},
textInputMultilineContainer: {
- paddingTop: 23,
+ paddingTop: 25,
},
By changing the line height to the baseTextInput style, it will also solve text shift issue when we type a normal text then add an emoji (reference). |
ProposalThe root cause was explained clearly in previous proposal. And Part 1 of solution is also same. diff --git a/src/styles/styles.js b/src/styles/styles.js
index 4b1d1982ae..fa36e795cc 100644
--- a/src/styles/styles.js
+++ b/src/styles/styles.js
@@ -744,7 +744,7 @@ const styles = {
position: 'absolute',
top: 0,
width: '100%',
- height: 25,
+ height: 23,
backgroundColor: themeColors.componentBG,
}, or Line 30 in 703b5c4
Line 768 in 703b5c4
Line 779 in 703b5c4
Line 823 in 703b5c4
Line 775 in 703b5c4
Part 2
for multiline input style. Solution: either remove Lines 763 to 772 in 3691c81
Either (I prefer the 2nd one) lineHeight: variables.lineHeightNormal,
- lineHeight: variables.lineHeightNormal, This will also change App/src/components/TextInput/BaseTextInput.js Line 291 in 3691c81
- !this.props.multiline && {height: this.state.height, lineHeight: undefined},
+ !this.props.multiline && {height: this.state.height}, or - lineHeight: variables.lineHeightNormal,
+ lineHeight: variables.lineHeightXLarge, |
Proposal 2 I think we can get rid of the extra element for multiline input which seems not required and with this, it will create/render the same structure it does for other inputs. diff --git a/src/components/TextInput/BaseTextInput.js b/src/components/TextInput/BaseTextInput.js
index 87f02ba528..504c86b464 100644
--- a/src/components/TextInput/BaseTextInput.js
+++ b/src/components/TextInput/BaseTextInput.js
@@ -238,7 +238,6 @@ class BaseTextInput extends Component {
<>
{/* Adding this background to the label only for multiline text input,
to prevent text overlapping with label when scrolling */}
- {this.props.multiline && <View style={styles.textInputLabelBackground} pointerEvents="
none" />}
<TextInputLabel
label={this.props.label}
diff --git a/src/styles/styles.js b/src/styles/styles.js
index 4b1d1982ae..22f5c0d9a8 100644
--- a/src/styles/styles.js
+++ b/src/styles/styles.js
@@ -740,14 +740,6 @@ const styles = {
width: '100%',
},
- textInputLabelBackground: {
- position: 'absolute',
- top: 0,
- width: '100%',
- height: 25,
- backgroundColor: themeColors.componentBG,
- },
- |
Hey @rushatgabhane, can you review these proposals when you get a chance? Thanks! |
I like @Pujan92's proposal but it also needs line height as mentioned by @bernhardoj (#14674 (comment) to fix text shift issue). |
@tylerkaraszewski let's go with @Pujan92's proposal because the text shift issue is kinda unrelated. C+ reviewed 🎀 👀 🎀 |
👍 |
@rushatgabhane If we wanna increase input paddingTop 2px more, I think this should be applied to all types of inputs as well as multiline input for consistency as I stated in Part 1- 2) of my proposal. |
@rushatgabhane @tylerkaraszewski shall I wait until I get assigned? |
@Pujan92 Just hired you. Go for it. |
Is anyone working on the bugzero checkllist for this? |
Regression Test Proposal
Do we agree 👍 or 👎 |
Is this eligible for timeline bonus? |
@rushatgabhane / @tylerkaraszewski can one of you get the BZ steps started? |
@rushatgabhane - have we ID'ed where this was introduced and gone through those parts of the checklist? |
Waiting on a reply from @rushatgabhane |
will get to this today |
@tylerkaraszewski, @garrettmknight, @shawnborton, @rushatgabhane, @situchan Whoops! This issue is 2 days overdue. Let's get this updated quick! |
https://github.com/Expensify/App/pull/5805/files#r1142809457
https://expensify.slack.com/archives/C049HHMV9SM/p1679361004650639 |
@tylerkaraszewski could you please update the checklist with this data because i can't edit comments. |
Got it - looks like everything is moving. |
It looks like this would have gone through quickly, but our internal reviewer was on vacay. No harm, no foul. Paying out - 50% bonus for C and C+. |
@garrettmknight I just accepted offer. However, there's already contract started on Feb 6. |
@garrettmknight appreciate it, thanks! |
@situchan Paid it all out in the other contract. We're all set here! |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Actions Performed:
Expected Result:
Emojis are entirely visible
Actual Result:
The tops of the emojis are cut off
Workaround:
unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Version Number: 1.2.61-0
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:
23-01-30-15-43-52.mp4
Expensify/Expensify Issue URL:
Issue reported by: @adeel0202
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1675075667380219
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: