jMonkeyEngine / sdk

The jMonkeyEngine3 Software Development Kit based on Netbeans
BSD 3-Clause "New" or "Revised" License
314 stars 101 forks source link

LaF/Swing Exception with Darkmonkey #286

Open MeFisto94 opened 4 years ago

MeFisto94 commented 4 years ago

This could very well be a bug in the JDK 11 that I use locally, most likely out of our scope to fix, but we can still track it here:

java.lang.NullPointerException
    at java.desktop/javax.swing.GrayFilter.createDisabledImageImpl(GrayFilter.java:63)
    at java.desktop/javax.swing.GrayFilter.createDisabledImage(GrayFilter.java:58)
    at java.desktop/javax.swing.text.html.ImageView.getImage(ImageView.java:238)
    at java.desktop/javax.swing.text.html.ImageView.paint(ImageView.java:409)
    at java.desktop/javax.swing.text.BoxView.paintChild(BoxView.java:162)
    at java.desktop/javax.swing.text.BoxView.paint(BoxView.java:434)
    at java.desktop/javax.swing.text.BoxView.paintChild(BoxView.java:162)
    at java.desktop/javax.swing.text.BoxView.paint(BoxView.java:434)
    at java.desktop/javax.swing.text.ParagraphView.paint(ParagraphView.java:573)
    at java.desktop/javax.swing.text.html.ParagraphView.paint(ParagraphView.java:238)
    at java.desktop/javax.swing.text.BoxView.paintChild(BoxView.java:162)
    at java.desktop/javax.swing.text.BoxView.paint(BoxView.java:434)
    at java.desktop/javax.swing.text.html.BlockView.paint(BlockView.java:282)
    at java.desktop/javax.swing.text.BoxView.paintChild(BoxView.java:162)
    at java.desktop/javax.swing.text.BoxView.paint(BoxView.java:434)
    at java.desktop/javax.swing.text.html.BlockView.paint(BlockView.java:282)
    at java.desktop/javax.swing.text.BoxView.paintChild(BoxView.java:162)
    at java.desktop/javax.swing.text.BoxView.paint(BoxView.java:434)
    at java.desktop/javax.swing.text.html.BlockView.paint(BlockView.java:282)
    at java.desktop/javax.swing.plaf.basic.BasicTextUI$RootView.paint(BasicTextUI.java:1530)
    at java.desktop/javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:759)
    at java.desktop/javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:917)
    at java.desktop/javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:896)
    at java.desktop/javax.swing.JComponent.paintComponent(JComponent.java:797)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1074)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)
    at java.desktop/javax.swing.JViewport.paint(JViewport.java:737)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
    at java.desktop/javax.swing.JSplitPane.paintChildren(JSplitPane.java:1024)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)
    at java.desktop/javax.swing.JComponent.paintToOffscreen(JComponent.java:5255)
    at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedImpl(RepaintManager.java:1643)
    at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1618)
    at java.desktop/javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1556)
    at java.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1323)
    at java.desktop/javax.swing.JComponent._paintImmediately(JComponent.java:5203)
    at java.desktop/javax.swing.JComponent.paintImmediately(JComponent.java:5013)
    at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:865)
    at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:848)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:848)
    at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:823)
    at java.desktop/javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:772)
    at java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1890)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
    at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
8Keep commented 4 years ago

I have not used the sdk is many years. But, I remember there didn't used to be any good dark themes for netbeans and I think that was one of the reasons the original author created darkmonkey. I think the forum has changed the dark color since then as well. Is it still necessary to maintain darkmonkey?

tonihele commented 4 years ago

Not commenting on the necessity. But Netbeans 11.3 did bring out some new themes, including dark themes. And the SDK is now at Netbeans 12. http://netbeans.apache.org/download/nb113/index.html

neph1 commented 1 year ago

I'm currently trying out FlatLaF together with DarkMonkey color scheme. Feels like a good combo. If we could just have the color scheme, I would assume it requires less maintenance. The color scheme is an important part of the branding, and I guess I'm to used to it to switch altogether. Although that's not a reason to keep it, if it detracts new users.