You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[HOLD for payment 2023-09-18] [$500] Chat - Scroll and image click is disabled when composer limit is triggered and we paste more text #26535
Please re-state the problem that we are trying to solve in this issue.
When we have a very long text in a main composer, we can't scroll the chat except by using the scrollbar, and also a caret is showing while hovering over anything (not specific to the image) on the chat.
What is the root cause of that problem?
On the web, we render an invisible text to calculate a caret position. This is to prepare for the inline suggestion feature.
When the text is very long, the invisible text will cover up the chat screen causing the caret cursor to show. Here is how it looks with opacity set to 1.
This is because we set the bottom to be -2000. When the invisible text height is more than 2000, it will start to cover up the chat screen.
What changes do you think we should make in order to solve the problem?
Remove the bottom positioning. This will let the invisible text height grow infinitely with the direction to the bottom.
Alternatively, I think we can position the invisible text to be out of the screen horizontally by setting left to -9999 for example. It won't matter how big is the height.
You can scroll using the scrollbar, or using your mouse wheel when the cursor is outside the message containers, but not when your cursor is inside a message
You can't open images, toggle tasks, or interact with the on-hover menu or add reacjis
changed the title [-]Chat - Scroll and image click is disabled when composer limit is triggered and we paste more text[/-][+][$500] Chat - Scroll and image click is disabled when composer limit is triggered and we paste more text[/+]on Sep 4, 2023
A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion N/A
Determine if we should create a regression test for this bug - I think to be sure that we a good to go - let's have this test steps:
Regression Testing
Open any chat
Type a very long text that exceeds the max length of the composer (text is provided below)
Move over your mouse to the center of the chat screen (web/desktop)
Verify the cursor is not a caret (web/desktop)
Verify you can scroll the chat using either the mouse wheel/trackpad (web/desktop) or by touch (mWeb/Android/iOS)
Activity
melvin-bot commentedon Sep 1, 2023
Triggered auto assignment to @kadiealexander (
Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.melvin-bot commentedon Sep 1, 2023
Bug0 Triage Checklist (Main S/O)
Platformsin OP are ✅)bernhardoj commentedon Sep 2, 2023
Proposal
Please re-state the problem that we are trying to solve in this issue.
When we have a very long text in a main composer, we can't scroll the chat except by using the scrollbar, and also a caret is showing while hovering over anything (not specific to the image) on the chat.
What is the root cause of that problem?
On the web, we render an invisible text to calculate a caret position. This is to prepare for the inline suggestion feature.
App/src/components/Composer/index.js
Line 480 in 9701fbe
App/src/components/Composer/index.js
Lines 412 to 420 in 9701fbe
When the text is very long, the invisible text will cover up the chat screen causing the caret cursor to show. Here is how it looks with opacity set to 1.

This is because we set the bottom to be -2000. When the invisible text height is more than 2000, it will start to cover up the chat screen.
What changes do you think we should make in order to solve the problem?
Remove the
bottompositioning. This will let the invisible text height grow infinitely with the direction to the bottom.Alternatively, I think we can position the invisible text to be out of the screen horizontally by setting
leftto -9999 for example. It won't matter how big is the height.kadiealexander commentedon Sep 4, 2023
Reproduced:
2023-09-04_15-39-40.mp4
Notes:
[-]Chat - Scroll and image click is disabled when composer limit is triggered and we paste more text[/-][+][$500] Chat - Scroll and image click is disabled when composer limit is triggered and we paste more text[/+]melvin-bot commentedon Sep 4, 2023
Job added to Upwork: https://www.upwork.com/jobs/~01e6ea16d0f3dcd7de
melvin-bot commentedon Sep 4, 2023
Current assignee @kadiealexander is eligible for the External assigner, not assigning anyone new.
melvin-bot commentedon Sep 4, 2023
Triggered auto assignment to Contributor-plus team member for initial proposal review - @narefyev91 (
External)narefyev91 commentedon Sep 4, 2023
Proposal from @bernhardoj looks good to me - we should fix that - because user may loose ability to interact with items on the page
🎀 👀 🎀 C+ reviewed
21 remaining items
kadiealexander commentedon Sep 20, 2023
Payouts due:
Eligible for 50% #urgency bonus? No
Upwork job is here.
kadiealexander commentedon Sep 20, 2023
@dhanashree-sawant could you please apply in Upwork?
@narefyev91 please complete the checklist when you next get a chance!
bernhardoj commentedon Sep 20, 2023
The PR is delayed because of the merge freeze. Is it possible to ignore the merge freeze delay?
dhanashree-sawant commentedon Sep 20, 2023
Hi @kadiealexander, if possible can you send me offer to the job?
narefyev91 commentedon Sep 20, 2023
Regression Testing
pecanoro commentedon Sep 22, 2023
@kadiealexander All yours when you get the chance!
kadiealexander commentedon Sep 25, 2023
@dhanashree-sawant please let me know when you've accepted my offer.
dhanashree-sawant commentedon Sep 25, 2023
Thanks @kadiealexander, I have accepted the offer.