Skip to content

Conversation

@Yusyuriv
Copy link
Member

Changes

I extracted parts of the plugin display component that are only displayed when it's expanded (keyword, bottom part with author, version, directory etc.) into 2 separate controls. Now they render lazily, only after the plugin has been expanded. Before this change, only custom plugin settings were rendering lazily.

Performance improvement

Time required to render my list of 31 plugins:

Before (700 ms):
image

After (400 ms):
image

Testing

  • Plugins in the list expand correctly
  • Action keyword is displayed correctly and can be changed
  • Plugin author and version display correctly
  • Website, directory, uninstall icons perform correct actions on click

Notes

This feels wrong to do, but I haven't managed to make virtualization work with plugins being able to expand, which changes their size. With virtualization enabled, it seems to work fine when using the scroll wheel, but if I try to use the scrollbar, the settings window freezes. This PR is the best working solution I have found.

@Yusyuriv Yusyuriv self-assigned this May 29, 2024
@onesounds onesounds merged commit c4310f0 into dev May 29, 2024
@onesounds onesounds deleted the impove-plugins-settings-pane-performance branch May 29, 2024 07:14
@jjw24 jjw24 added the enhancement New feature or request label Jul 5, 2024
@jjw24 jjw24 added this to the 1.19.0 milestone Jul 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants