Bug 61697 - Introduce Darcula Look And Feel to make JMeter UI more attractive
Summary: Introduce Darcula Look And Feel to make JMeter UI more attractive
Status: RESOLVED FIXED
Alias: None
Product: JMeter - Now in Github
Classification: Unclassified
Component: Main (show other bugs)
Version: 3.3
Hardware: All All
: P2 enhancement (vote)
Target Milestone: ---
Assignee: JMeter issues mailing list
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-10-30 20:20 UTC by Philippe Mouawad
Modified: 2022-08-03 16:45 UTC (History)
1 user (show)



Attachments
Theme for Darcula by Philippe (207.49 KB, application/xml)
2017-11-23 17:18 UTC, Philippe Mouawad
Details
Darcula theme proposal by Maxime (98.09 KB, application/xml)
2017-11-23 17:18 UTC, Philippe Mouawad
Details
Dark Theme present in JSyntaxTextArea (189.06 KB, application/xml)
2017-11-23 17:22 UTC, Philippe Mouawad
Details
Monokai Theme (190.51 KB, image/png)
2017-11-23 17:26 UTC, Philippe Mouawad
Details
Screenshot showing a slight bug on Mac where the titles of columns are not displayed (111.50 KB, image/png)
2017-11-28 21:19 UTC, Philippe Mouawad
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Philippe Mouawad 2017-10-30 20:20:00 UTC
As per discussion on dev mailing list:

"Integrating Darcula LAF as JMeter main LAF"
Comment 1 Philippe Mouawad 2017-10-30 20:31:12 UTC
Author: pmouawad
Date: Mon Oct 30 20:30:04 2017
New Revision: 1813826

URL: http://svn.apache.org/viewvc?rev=1813826&view=rev
Log:
Bug 61697 - Introduce Darcula Look And Feel to make JMeter UI more attractive
Bugzilla Id: 61697

Modified:
    jmeter/trunk/LICENSE
    jmeter/trunk/build.properties
    jmeter/trunk/build.xml
    jmeter/trunk/eclipse.classpath
    jmeter/trunk/lib/   (props changed)
    jmeter/trunk/lib/aareadme.txt
    jmeter/trunk/src/core/org/apache/jmeter/gui/action/LookAndFeelCommand.java
    jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java
    jmeter/trunk/xdocs/changes.xml
Comment 2 Philippe Mouawad 2017-10-30 21:15:34 UTC
Author: pmouawad
Date: Mon Oct 30 21:13:58 2017
New Revision: 1813831

URL: http://svn.apache.org/viewvc?rev=1813831&view=rev
Log:
Bug 61697 - Introduce Darcula Look And Feel to make JMeter UI more attractive
Fix tests
Bugzilla Id: 61697

Modified:
    jmeter/trunk/LICENSE
    jmeter/trunk/test/src/org/apache/jmeter/JMeterVersionTest.java
Comment 3 Philippe Mouawad 2017-11-19 10:47:10 UTC
Author: pmouawad
Date: Sun Nov 19 10:46:52 2017
New Revision: 1815724

URL: http://svn.apache.org/viewvc?rev=1815724&view=rev
Log:
Bug 61697 - Introduce Darcula Look And Feel to make JMeter UI more attractive
Install LAF correctly
Change Preference name so that previous chosen preferences does not hide this new feature
Remove overriden settings in JMeter
Bugzilla Id: 61697

Modified:
    jmeter/trunk/bin/jmeter.properties
    jmeter/trunk/src/core/org/apache/jmeter/gui/action/LookAndFeelCommand.java
    jmeter/trunk/src/core/org/apache/jmeter/gui/util/JMeterMenuBar.java
Comment 4 Philippe Mouawad 2017-11-21 12:33:17 UTC
Author: pmouawad
Date: Tue Nov 21 12:32:33 2017
New Revision: 1815915

URL: http://svn.apache.org/viewvc?rev=1815915&view=rev
Log:
Bug 61697 - Introduce Darcula Look And Feel to make JMeter UI more attractive
Bugzilla Id: 61697

Modified:
    jmeter/trunk/src/core/org/apache/jmeter/gui/action/LookAndFeelCommand.java
Comment 5 Philippe Mouawad 2017-11-23 14:09:26 UTC
Author: pmouawad
Date: Thu Nov 23 14:04:45 2017
New Revision: 1816155

URL: http://svn.apache.org/viewvc?rev=1816155&view=rev
Log:
Bug 61697 Introduce Darcula Look And Feel to make JMeter UI more attractive
Bugzilla Id: 61697

Added:
    jmeter/trunk/src/core/org/apache/jmeter/gui/util/theme/
    jmeter/trunk/src/core/org/apache/jmeter/gui/util/theme/darcula_theme.xml   (with props)
Modified:
    jmeter/trunk/src/core/org/apache/jmeter/gui/util/JSyntaxTextArea.java
Comment 6 Philippe Mouawad 2017-11-23 17:18:07 UTC
Created attachment 35551 [details]
Theme for Darcula by Philippe
Comment 7 Philippe Mouawad 2017-11-23 17:18:37 UTC
Created attachment 35552 [details]
Darcula theme proposal by Maxime
Comment 9 Philippe Mouawad 2017-11-23 17:22:12 UTC
Created attachment 35553 [details]
Dark Theme present in JSyntaxTextArea
Comment 10 Philippe Mouawad 2017-11-23 17:26:40 UTC
Created attachment 35554 [details]
Monokai Theme
Comment 11 Antonio Gomes Rodrigues 2017-11-24 10:40:55 UTC
Hi,

In Windows I can't execute JMeter in the last nighty build (r1816194)


I have

2017-11-24 11:38:27,570 ERROR o.a.j.g.u.JSyntaxTextArea: Error reading darcula_theme for JSyntaxTextArea
java.io.IOException: java.io.IOException: Stream closed
	at org.fife.ui.rsyntaxtextarea.Theme$XmlHandler.load(Theme.java:624) ~[rsyntaxtextarea-2.6.1.jar:2.6.1]
	at org.fife.ui.rsyntaxtextarea.Theme.load(Theme.java:355) ~[rsyntaxtextarea-2.6.1.jar:2.6.1]
	at org.fife.ui.rsyntaxtextarea.Theme.load(Theme.java:333) ~[rsyntaxtextarea-2.6.1.jar:2.6.1]
	at org.apache.jmeter.gui.util.JSyntaxTextArea.initTheme(JSyntaxTextArea.java:266) [ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.util.JSyntaxTextArea.<clinit>(JSyntaxTextArea.java:45) [ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.functions.gui.FunctionHelper.init(FunctionHelper.java:124) [ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.functions.gui.FunctionHelper.<init>(FunctionHelper.java:80) [ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.action.CreateFunctionDialog.<init>(CreateFunctionDialog.java:37) [ApacheJMeter_core.jar:r1816194]
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_144]
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) [?:1.8.0_144]
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) [?:1.8.0_144]
	at java.lang.reflect.Constructor.newInstance(Unknown Source) [?:1.8.0_144]
	at java.lang.Class.newInstance(Unknown Source) [?:1.8.0_144]
	at org.apache.jmeter.gui.action.ActionRouter.populateCommandMap(ActionRouter.java:372) [ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.JMeter.startGui(JMeter.java:371) [ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.JMeter.start(JMeter.java:522) [ApacheJMeter_core.jar:r1816194]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_144]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_144]
	at org.apache.jmeter.NewDriver.main(NewDriver.java:248) [ApacheJMeter.jar:r1816194]
2017-11-24 11:38:27,661 ERROR o.a.j.g.a.ActionRouter: exception finding action handlers
java.lang.NullPointerException: null
	at org.apache.jmeter.gui.util.JSyntaxTextArea.applyTheme(JSyntaxTextArea.java:118) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.util.JSyntaxTextArea.getInstance(JSyntaxTextArea.java:78) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.util.JSyntaxTextArea.getInstance(JSyntaxTextArea.java:139) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.functions.gui.FunctionHelper.init(FunctionHelper.java:124) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.functions.gui.FunctionHelper.<init>(FunctionHelper.java:80) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.action.CreateFunctionDialog.<init>(CreateFunctionDialog.java:37) ~[ApacheJMeter_core.jar:r1816194]
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_144]
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_144]
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_144]
	at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.8.0_144]
	at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_144]
	at org.apache.jmeter.gui.action.ActionRouter.populateCommandMap(ActionRouter.java:372) [ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.JMeter.startGui(JMeter.java:371) [ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.JMeter.start(JMeter.java:522) [ApacheJMeter_core.jar:r1816194]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_144]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_144]
	at org.apache.jmeter.NewDriver.main(NewDriver.java:248) [ApacheJMeter.jar:r1816194]
2017-11-24 11:38:27,786 ERROR o.a.j.JMeter: An error occurred: 
java.lang.NullPointerException: null
	at org.apache.jmeter.gui.util.JSyntaxTextArea.applyTheme(JSyntaxTextArea.java:118) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.util.JSyntaxTextArea.getInstance(JSyntaxTextArea.java:78) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.LoggerPanel.init(LoggerPanel.java:84) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.LoggerPanel.<init>(LoggerPanel.java:74) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.MainFrame.createLoggerPanel(MainFrame.java:614) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.MainFrame.init(MainFrame.java:512) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.gui.MainFrame.<init>(MainFrame.java:220) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.JMeter.startGui(JMeter.java:376) ~[ApacheJMeter_core.jar:r1816194]
	at org.apache.jmeter.JMeter.start(JMeter.java:522) [ApacheJMeter_core.jar:r1816194]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_144]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_144]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_144]
	at org.apache.jmeter.NewDriver.main(NewDriver.java:248) [ApacheJMeter.jar:r1816194]
Comment 12 Philippe Mouawad 2017-11-24 12:47:01 UTC
Author: pmouawad
Date: Fri Nov 24 11:11:24 2017
New Revision: 1816230

URL: http://svn.apache.org/viewvc?rev=1816230&view=rev
Log:
Bug 61697 Introduce Darcula Look And Feel to make JMeter UI more attractive
Forgot to commit the xml addition to jar
Bugzilla Id: 61697

Modified:
    jmeter/trunk/build.xml
Comment 13 Philippe Mouawad 2017-11-24 12:47:33 UTC
Hi Antonio,
I had forgotten a commit.
Can you test again and give your feedback on different proposals ?
Thanks
Comment 14 Antonio Gomes Rodrigues 2017-11-24 17:41:20 UTC
Work fine in Windows now

Thank
Antonio
Comment 15 Philippe Mouawad 2017-11-28 21:19:42 UTC
Created attachment 35563 [details]
Screenshot showing a slight bug on Mac where the titles of columns are not displayed

There is non blocker bug in Darcula LAF where in File Chooser the column titles show label keys
Comment 16 Philippe Mouawad 2017-12-30 14:17:37 UTC
Author: pmouawad
Date: Sat Dec 30 14:15:08 2017
New Revision: 1819606

URL: http://svn.apache.org/viewvc?rev=1819606&view=rev
Log:
Bug 61697 Introduce Darcula Look And Feel to make JMeter UI more attractive
Change highlight color as it makes text unreadable with Darcula LAF
Bugzilla Id: 61697

Modified:
    jmeter/trunk/src/components/org/apache/jmeter/visualizers/SearchTextExtension.java
Comment 17 Philippe Mouawad 2018-01-11 22:18:30 UTC
Author: pmouawad
Date: Thu Jan 11 22:17:36 2018
New Revision: 1820936

URL: http://svn.apache.org/viewvc?rev=1820936&view=rev
Log:
Bug 61697 - Introduce Darcula Look And Feel to make JMeter UI more attractive
Matched brackets are not visible, fix that
Bugzilla Id: 61697

Modified:
    jmeter/trunk/src/core/org/apache/jmeter/gui/util/theme/darcula_theme.xml
Comment 18 The ASF infrastructure team 2022-09-24 20:38:10 UTC
This issue has been migrated to GitHub: https://github.com/apache/jmeter/issues/4553