fix: tooltip show over dialog#49682
Conversation
|
@dukenv0307 Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
|
@daledah performance tests are failing. |
|
@daledah lint is failing. |
|
The ESLint check failure is unrelated to this PR (it's a withOnyx migration). I think we can skip that and tackle it as a follow up. |
Reviewer Checklist
Screenshots/VideosAndroid: NativeScreen.Recording.2024-09-26.at.10.57.42.movAndroid: mWeb ChromeScreen.Recording.2024-09-26.at.10.53.03.moviOS: NativeScreen.Recording.2024-09-26.at.10.56.02.moviOS: mWeb SafariScreen.Recording.2024-09-26.at.10.51.39.movMacOS: Chrome / Safariweb-resize.mp4MacOS: DesktopScreen.Recording.2024-09-26.at.11.00.32.mov |
|
LGTM |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
Performance Comparison Report 📊Significant Changes To Duration
Show details
Meaningless Changes To DurationShow entries
Show details
|
|
@Expensify/mobile-deployers 📣 Please look into this performance regression as it's a deploy blocker. |
|
Hmm this PR changed some low level components in the LHN and composer, so it could have affected performance. That being said, I can't find the e2e workflow run for it. Gonna re-run this job. |
|
Latest run had: |
|
🚀 Deployed to staging by https://github.com/luacmartins in version: 9.0.41-0 🚀
|
|
🚀 Deployed to production by https://github.com/jasperhuangg in version: 9.0.41-10 🚀
|
| }, 500); | ||
| }, [shouldMeasure, shouldRender]); | ||
| }, [shouldMeasure, shouldShow]); | ||
|
|
There was a problem hiding this comment.
We should close the tooltip in the componentWillUmount
| const show = useRef<() => void>(); | ||
| const [modal] = useOnyx(ONYXKEYS.MODAL); | ||
|
|
||
| const shouldShow = !modal?.willAlertModalBecomeVisible && !modal?.isVisible; |
There was a problem hiding this comment.
FYI, this caused the following issue: #51987
This PR prevents tooltips from displaying in modals due to the shouldShow condition. The issue arises from blocking tooltip visibility whenever a modal is active. Instead, we need to adjust the logic to dismiss tooltips only when a modal is about to appear, ensuring tooltips can display in modals.
More details can be found in this proposal: #51987 (comment) and PR: #52446

Details
Fixed Issues
$ #49517
PROPOSAL: #49517 (comment)
Tests
Offline tests
QA Steps
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Screen.Recording.2024-09-25.at.10.29.16.mov
Android: mWeb Chrome
Screen.Recording.2024-09-25.at.10.24.19.mov
iOS: Native
Screen.Recording.2024-09-25.at.10.40.53.mov
iOS: mWeb Safari
Screen.Recording.2024-09-25.at.10.37.42.mov
MacOS: Chrome / Safari
Screen.Recording.2024-09-25.at.09.32.03.mov
MacOS: Desktop
Screen.Recording.2024-09-25.at.10.45.22.mov