Skip to content
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

Performance slowdown in all floating ui elements #8419

Closed
2 of 6 tasks
paulcpederson opened this issue Dec 13, 2023 · 2 comments
Closed
2 of 6 tasks

Performance slowdown in all floating ui elements #8419

paulcpederson opened this issue Dec 13, 2023 · 2 comments
Assignees
Labels
4 - verified Issues that have been released and confirmed resolved. ArcGIS Online Issues logged by ArcGIS Online team members. bug Bug reports for broken functionality. Issues should include a reproduction of the bug. calcite-components Issues specific to the @esri/calcite-components package. impact - p1 - need for current milestone User set priority impact status of p1 - need for current milestone

Comments

@paulcpederson
Copy link
Member

Check existing issues

Actual Behavior

If you have lots of components which use floating-ui (dropdown, combobox, tooltip, popover) after the 2.0 release it is now much slower. There is a long waiting period and scroll performance also suffers.

Expected Behavior

Rendering multiple floating ui components should not cause memory issues or latency in the browser.

Reproduction Sample

https://codepen.io/paulcp/full/WNPPovN

Reproduction Steps

Load the page and notice a long latency before the components appear. Additionally, scroll the page and notice how components will disappear.

Reproduction Version

2.0.0

Relevant Info

No response

Regression?

Yes, unsure of last working version, but the 1.x line seemed fine

Priority impact

p1 - need for current milestone

Impact

Entire interfaces we have built now crawl to a halt. The app is virtually unusable now.

Calcite package

  • @esri/calcite-components
  • @esri/calcite-components-angular
  • @esri/calcite-components-react
  • @esri/calcite-design-tokens
  • @esri/eslint-plugin-calcite-components

Esri team

ArcGIS Online

@paulcpederson paulcpederson added bug Bug reports for broken functionality. Issues should include a reproduction of the bug. 0 - new New issues that need assignment. needs triage Planning workflow - pending design/dev review. labels Dec 13, 2023
@github-actions github-actions bot added ArcGIS Online Issues logged by ArcGIS Online team members. calcite-components Issues specific to the @esri/calcite-components package. impact - p1 - need for current milestone User set priority impact status of p1 - need for current milestone labels Dec 13, 2023
driskull added a commit that referenced this issue Dec 13, 2023
**Related Issue:** #7979 #8214 #8386 #8419 #5697

## Summary

- reverts #8001
  - Keeps doc updates 
- reverts partially #8230
- Keeps drag classes that are setting `overflow:hidden` when a drag is
occurring.
- Keeps roundByDPR floating-ui fix.
https://floating-ui.com/docs/misc#subpixel-and-accelerated-positioning
- Hides overflow for `calcite-sortable--chosen` class
- Only sets `top` and `left` on floating element once positioned. **This
fixes native drag and drop issue**
@driskull driskull self-assigned this Dec 13, 2023
@driskull driskull added 3 - installed Issues that have been merged to master branch and are ready for final confirmation. and removed 0 - new New issues that need assignment. labels Dec 13, 2023
@driskull driskull added this to the 2023 December Priorities milestone Dec 13, 2023
@driskull driskull removed the needs triage Planning workflow - pending design/dev review. label Dec 13, 2023
@github-actions github-actions bot assigned geospatialem and DitwanP and unassigned driskull Dec 13, 2023
Copy link
Contributor

Installed and assigned for verification.

@DitwanP
Copy link
Contributor

DitwanP commented Dec 14, 2023

🍯 Verified locally with latest next version.

Perceived performance was improved, I no longer notice the components disappearing when scrolling down and initial latency seems improved.

Profiling results show improvement in scripting and rendering times between 2.0.0 and 2.1.0-next.8 although the idle time is much longer (not sure how much that matters). The load times seem faster to me even with the increased idle time.

Before:
Screenshot 2023-12-14 at 12 09 07 PM

After:
Screenshot 2023-12-14 at 12 12 25 PM

@DitwanP DitwanP closed this as completed Dec 14, 2023
@DitwanP DitwanP added 4 - verified Issues that have been released and confirmed resolved. and removed 3 - installed Issues that have been merged to master branch and are ready for final confirmation. labels Dec 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4 - verified Issues that have been released and confirmed resolved. ArcGIS Online Issues logged by ArcGIS Online team members. bug Bug reports for broken functionality. Issues should include a reproduction of the bug. calcite-components Issues specific to the @esri/calcite-components package. impact - p1 - need for current milestone User set priority impact status of p1 - need for current milestone
Projects
None yet
Development

No branches or pull requests

4 participants