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

Add Flat LAF & IntelliJ themes support capability in JMeter #6312

Open
wants to merge 10 commits into
base: master
Choose a base branch
from

Conversation

KingRabbid
Copy link

@KingRabbid KingRabbid commented Jul 8, 2024

Description

I've introduced support for Flat LAF Themes in JMeter; Flat LAF is an open source https://www.formdev.com/flatlaf/ Java Swing library with modern look & feel, supports IntelliJ themes, HiDPI, etc (see the website).
If's compatible with JMeter codebase by default.
New parameters are defined & customizable in .properties & .xml file(s): one can adjust the JSyntaxTextArea.java theme defaults.
Few additional bugs/enhancements were also introduced in order to make the visual experience better.

For future: I would remove Darcula and DarkLaf from JMeter, doesn't make sense anymore to keep them; replace DarkLaf features/usage with FlatLAF API where possible.

Motivation and Context

Due to recent eye vision problems, I've started to need alternative themes support to use other colors; existing capability in JMeter was limited.
DarkLaf API currently in-use in JMeter seems to be non maintained (last update September 2022) and complicated to upgrade to latest version.

How Has This Been Tested?

Manually tested with various JMXs & Themes, especially with JSR223 test elements to validate the JSyntaxTextArea instances.
I've run tests on both Linux and Windows, with Java 8, 11 & 17.

Note: changes are fully compatible also with JMeter 5.x branch/version if needed.

Screenshots (if appropriate):

Screenshot 2024-07-08 160622
Screenshot 2024-07-08 160747
Screenshot 2024-07-08 161525

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)

Checklist:

  • My code follows the code style of this project.
  • I have updated the documentation accordingly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant