-
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
[Due for payment 2025-02-19] [$250] Web - Compose box - Expand collapse tooltip not dismissed after clicking #56037
Comments
Triggered auto assignment to @muttmuure ( |
ProposalPlease re-state the problem that we are trying to solve in this issue.Web - Compose box - Expand collapse tooltip not dismissed after clicking What is the root cause of that problem?In AttachmentPickerWithMenuItems, we have two tooltips: collapse and expand.
The issue occurs because the tooltip does not unmount when switching between expand and collapse. As a result, the tooltip remains open and does not dismiss properly. You can track this behavior in the ActiveHoverable file. What changes do you think we should make in order to solve the problem?We should ensure the tooltip components are treated as distinct elements by adding a
to <Tooltip text={translate('reportActionCompose.collapse')} key="collapse">
to <Tooltip text={translate('reportActionCompose.expand')} key="expand"> ResultScreen.Recording.2025-01-30.at.6.16.00.PM.movWhat specific scenarios should we cover in automated tests to prevent reintroducing this issue in the future?N/A, UI bug What alternative solutions did you explore? (Optional)N/A |
@muttmuure Huh... This is 4 days overdue. Who can take care of this? |
Job added to Upwork: https://www.upwork.com/jobs/~021886888179679387363 |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @rojiphil ( |
🚨 Edited by proposal-police: This proposal was edited at 2025-02-05 14:46:32 UTC. ProposalPlease re-state the problem that we are trying to solve in this issue.Expand collapse tooltip not dismissed after clicking What is the root cause of that problem?The tooltip remains in the DOM even when switching between ‘Expand’ and ‘Collapse,’ so the
What changes do you think we should make in order to solve the problem?To resolve this issue, we need to update the way we render collapse/expand so that it can unmount properly, like this: App/src/pages/home/report/ReportActionCompose/AttachmentPickerWithMenuItems.tsx Lines 294 to 336 in efaa20c
Update to {isComposerFullSize ? (
<Tooltip text={translate('reportActionCompose.collapse')}>
<PressableWithFeedback
onPress={(e) => {
e?.preventDefault();
raiseIsScrollLikelyLayoutTriggered();
setIsComposerFullSize(reportID, false);
}}
// Keep focus on the composer when Collapse button is clicked.
onMouseDown={(e) => e.preventDefault()}
style={styles.composerSizeButton}
disabled={isBlockedFromConcierge || disabled}
role={CONST.ROLE.BUTTON}
accessibilityLabel={translate('reportActionCompose.collapse')}
>
<Icon
fill={theme.icon}
src={Expensicons.Collapse}
/>
</PressableWithFeedback>
</Tooltip>
) : null}
{!isComposerFullSize ? (
<Tooltip text={translate('reportActionCompose.expand')}>
<PressableWithFeedback
onPress={(e) => {
e?.preventDefault();
raiseIsScrollLikelyLayoutTriggered();
setIsComposerFullSize(reportID, true);
}}
// Keep focus on the composer when Expand button is clicked.
onMouseDown={(e) => e.preventDefault()}
style={styles.composerSizeButton}
disabled={isBlockedFromConcierge || disabled}
role={CONST.ROLE.BUTTON}
accessibilityLabel={translate('reportActionCompose.expand')}
>
<Icon
fill={theme.icon}
src={Expensicons.Expand}
/>
</PressableWithFeedback>
</Tooltip>
) : null} Screen.Recording.2025-02-05.at.13.10.03.movWhat specific scenarios should we cover in automated tests to prevent reintroducing this issue in the future?None What alternative solutions did you explore? (Optional)Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job. To resolve this issue, we need to temporarily remove the tooltip before toggling and re-render it with updated content after interactions finish. Some thing like this: {isComposerFullSize ? (
<Tooltip
text={translate('reportActionCompose.collapse')}
shouldRender={isShow}
>
<PressableWithFeedback
onPress={(e) => {
setIsShow(false);
...
InteractionManager.runAfterInteractions(() => {
setIsShow(true);
});
}}
...
>
...
</PressableWithFeedback>
</Tooltip>
) : (
<Tooltip
text={translate('reportActionCompose.expand')}
shouldRender={isShow}
>
<PressableWithFeedback
onPress={(e) => {
setIsShow(false);
...
InteractionManager.runAfterInteractions(() => {
setIsShow(true);
});
}}
...
>
...
</PressableWithFeedback>
</Tooltip>
)} Test branch |
@rojiphil, @muttmuure Huh... This is 4 days overdue. Who can take care of this? |
Reviewing today |
Thanks @linhvovan29546 @huult for the proposals. Both proposals would solve the problem. However, @linhvovan29546 proposal LGTM i.e. adding |
Triggered auto assignment to @luacmartins, see https://stackoverflow.com/c/expensify/questions/7972 for more details. |
📣 @linhvovan29546 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app! Offer link |
PR is ready for review! |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.97-1 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2025-02-19. 🎊 For reference, here are some details about the assignees on this issue:
|
@rojiphil @muttmuure @rojiphil The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the BugZero Checklist from here into a new comment on this GH and complete it. If you have the K2 extension, you can simply click: [this button] |
@rojiphil @luacmartins @muttmuure @linhvovan29546 this issue was created 2 weeks ago. Are we close to approving a proposal? If not, what's blocking us from getting this issue assigned? Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks! |
PR is merged |
Heading out on leave - adding auto-assigner |
Triggered auto assignment to @abekkala ( |
@muttmuure Reviewing this one now to add some status info of where this is at (it's tough being thrown onto a bug issue - a quick summary is helpful!) |
CURRENT STATUS:Fix has been chosen and PR created PAYMENT SUMMARY FOR FEB 19Fix: @linhvovan29546 [$250, if no regressions] Offer |
Sorry! Thanks for taking it |
Just waiting to be paid out- you got it |
@rojiphil, @abekkala, @luacmartins, @linhvovan29546 Whoops! This issue is 2 days overdue. Let's get this updated quick! |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: v9.0.92-0
Reproducible in staging?: Yes
Reproducible in production?: Yes
Issue reported by: Applause Internal Team
Device used: Windows 11/ Chrome
App Component: Chat Report View
Action Performed:
Expected Result:
After clicking both expand and collapse arrows, tooltip is dismissed.
Actual Result:
After clicking both expand and collapse arrows, tooltip is not dismissed both times.
Workaround:
Unknown
Platforms:
Screenshots/Videos
Bug6728217_1738217914233.bandicam_2025-01-30_09-08-06-129.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @muttmuureThe text was updated successfully, but these errors were encountered: