Challenge Overview
Challenge Objectives
- Webstorm plugin (JavaFX Webview) performance analysis and improvement
Project Background
We previously created a percy editor, which can run as webapp, electron app or inside a vscode or webstorm editor.
You can find more information about it in the readme of the repo: https://github.com/standlove/percy-cake
For the webstorm plugin, we currently have two packages:
- webstorm-javafx - it uses JavaFX webview to load the percy editor HTML page
- webstorm-jxbrowser - it uses the JxBrowser to load the percy editor HTML page
The one uses the JavaFX webview is a bit slow, and that's what you need to analyze and improve.
Note that the webstorm plugin use the same generated HTML page as the vscode extension.
Technology Stack
- Webstorm Plugin
- JavaFX Webview
- Angular 7
Requirements
By playing with the webstorm-javafx extension in Webstorm, you can notice the slowness in the following items:- The dropdown is slow to show up - we have tried to turn off the animation in Angular app for the plugin, so it looks better now.
- Enter text in the text input is slow - I can notice some delay when I type quickly
- Move the split bar almost freeze the page - this is a major issue you need to investigate
- The other user interactions on the page are a bit slower as well, please play with both JavaFX version and JxBrowser version (or the vscode version) to see the difference.
Final Submission Guidelines
Submission Delivery- Analysis Report
- Patch file containing the improvements