raydac / netbeans-mmd-plugin

Free mind map editor with plug-ins for both NetBeans and Intellij
Apache License 2.0
384 stars 44 forks source link

IntelliJ 2023.2 EAP throws NullPointerException during Font metrics operations #115

Closed krasa closed 1 year ago

krasa commented 1 year ago

Opening of a new file fails on:

  Can't parse MindMap text

  java.lang.NullPointerException: Cannot invoke "java.util.TreeMap.hashCode()" because "this.features" is null
at java.desktop/java.awt.Font.hashCode(Font.java:1872)
at java.desktop/sun.font.FontDesignMetrics$MetricsKey.init(FontDesignMetrics.java:219)
at java.desktop/sun.font.FontDesignMetrics.getMetrics(FontDesignMetrics.java:288)
at java.desktop/sun.java2d.SunGraphics2D.getFontMetrics(SunGraphics2D.java:859)
at com.igormaznitsa.mindmap.swing.panel.ui.gfx.MMGraphics2DWrapper.getFontMaxAscent(MMGraphics2DWrapper.java:169)
at com.igormaznitsa.mindmap.swing.panel.ui.TextBlock.updateSize(TextBlock.java:94)
at com.igormaznitsa.mindmap.swing.panel.ui.AbstractElement.updateElementBounds(AbstractElement.java:112)
at com.igormaznitsa.mindmap.swing.panel.ui.ElementRoot.updateElementBounds(ElementRoot.java:176)
at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.setElementSizesForElementAndChildren(MindMapPanel.java:1118)
at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.calculateElementSizes(MindMapPanel.java:1132)
at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.updateElementsAndSizeForGraphics(MindMapPanel.java:2364)
at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.updateElementsAndSizeForCurrentGraphics(MindMapPanel.java:2397)
at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.lambda$doLayout$6(MindMapPanel.java:2339)
at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.doLayout(MindMapPanel.java:2345)
at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.setModel(MindMapPanel.java:2196)
at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.setModel(MindMapPanel.java:2230)
at com.igormaznitsa.ideamindmap.editor.MindMapDocumentEditor.lambda$makeRunnableSetDocumenttextAction$1(MindMapDocumentEditor.java:287)
at com.igormaznitsa.ideamindmap.utils.SwingUtils.safeSwing(SwingUtils.java:28)
at com.igormaznitsa.ideamindmap.editor.MindMapDocumentEditor.lambda$makeRunnableSetDocumenttextAction$2(MindMapDocumentEditor.java:277)
at com.igormaznitsa.ideamindmap.utils.SwingUtils.safeSwing(SwingUtils.java:28)
at com.igormaznitsa.ideamindmap.editor.MindMapDocumentEditor.lambda$loadMindMapFromDocument$3(MindMapDocumentEditor.java:304)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:903)
at com.igormaznitsa.ideamindmap.utils.IdeaUtils.lambda$executeReadAction$3(IdeaUtils.java:236)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:219)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:174)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:155)
at com.igormaznitsa.ideamindmap.utils.IdeaUtils.lambda$executeReadAction$4(IdeaUtils.java:236)
at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:209)
at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:21)
at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:191)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:869)
at com.intellij.openapi.application.impl.ApplicationImpl$4.run(ApplicationImpl.java:486)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:79)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:122)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:41)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:789)
at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:740)
at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:734)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:759)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:685)
at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$10(IdeEventQueue.kt:589)
at com.intellij.openapi.application.impl.ApplicationImpl.withoutImplicitRead(ApplicationImpl.java:1508)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:589)
at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:992)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:113)
at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:992)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:869)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:405)
at com.intellij.openapi.progress.impl.PlatformTaskSupportKt.pumpEventsForHierarchy(PlatformTaskSupport.kt:349)
at com.intellij.openapi.progress.impl.PlatformTaskSupportKt.access$pumpEventsForHierarchy(PlatformTaskSupport.kt:1)
at com.intellij.openapi.progress.impl.PlatformTaskSupport$runBlockingModalInternal$2.invoke(PlatformTaskSupport.kt:148)
at com.intellij.openapi.progress.impl.PlatformTaskSupport$runBlockingModalInternal$2.invoke(PlatformTaskSupport.kt:130)
at com.intellij.openapi.application.impl.ModalityKt.inModalContext(modality.kt:12)
at com.intellij.openapi.progress.impl.PlatformTaskSupport.runBlockingModalInternal(PlatformTaskSupport.kt:130)
at com.intellij.openapi.progress.impl.PlatformTaskSupport.access$runBlockingModalInternal(PlatformTaskSupport.kt:39)
at com.intellij.openapi.progress.impl.PlatformTaskSupport$runBlockingModalInternal$1.invoke(PlatformTaskSupport.kt:118)
at com.intellij.openapi.progress.impl.PlatformTaskSupport$runBlockingModalInternal$1.invoke(PlatformTaskSupport.kt:114)
at com.intellij.openapi.progress.ContextKt.prepareThreadContext(context.kt:88)
at com.intellij.openapi.progress.impl.PlatformTaskSupport.runBlockingModalInternal(PlatformTaskSupport.kt:114)
at com.intellij.openapi.progress.TasksKt.runBlockingModal(tasks.kt:155)
at com.intellij.openapi.progress.TasksKt.runBlockingModal(tasks.kt:91)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openEditorImpl(FileEditorManagerImpl.kt:1285)
at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.openFileEditor(FileEditorManagerImpl.kt:1252)
at com.intellij.openapi.fileEditor.FileEditorManager.openEditor(FileEditorManager.java:239)
at com.intellij.ide.util.EditorHelper.openInEditor(EditorHelper.java:54)
at com.intellij.ide.projectView.impl.IdeViewForProjectViewPane.selectElement(IdeViewForProjectViewPane.java:43)
at com.intellij.ide.fileTemplates.actions.CreateFromTemplateActionBase.actionPerformed(CreateFromTemplateActionBase.java:81)
at com.intellij.openapi.actionSystem.ex.ActionUtil.doPerformActionOrShowPopup(ActionUtil.java:333)
at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAwareWithCallbacks$4(ActionUtil.java:307)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:356)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:307)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$performAction$5(ActionMenuItem.java:300)
at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:226)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.performAction(ActionMenuItem.java:293)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$new$0(ActionMenuItem.java:68)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$4(ActionMenuItem.java:115)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:115)
at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:526)
at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMenuDragMouseHandler.menuDragMouseReleased(BegMenuItemUI.java:590)
at java.desktop/javax.swing.JMenuItem.fireMenuDragMouseReleased(JMenuItem.java:587)
at java.desktop/javax.swing.JMenuItem.processMenuDragMouseEvent(JMenuItem.java:484)
at java.desktop/javax.swing.JMenuItem.processMouseEvent(JMenuItem.java:429)
at java.desktop/javax.swing.MenuSelectionManager.processMouseEvent(MenuSelectionManager.java:347)
at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:560)
at java.desktop/java.awt.Component.processMouseEvent(Component.java:6657)
at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3385)
at java.desktop/java.awt.Component.processEvent(Component.java:6422)
at java.desktop/java.awt.Container.processEvent(Container.java:2266)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5027)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4855)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4954)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4581)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4522)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2808)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4855)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:791)
at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:740)
at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:734)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:764)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:762)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:761)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:685)
at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.kt:633)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:588)
at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368)
at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:992)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:113)
at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:992)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:869)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:405)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)

and an old file:

java.lang.NullPointerException
    at java.base/java.util.Objects.requireNonNull(Objects.java:209)
    at com.igormaznitsa.mindmap.swing.panel.ui.AbstractElement.doPaintConnectors(AbstractElement.java:192)
    at com.igormaznitsa.mindmap.swing.panel.ui.AbstractElement.doPaint(AbstractElement.java:172)
    at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.paintTopic(MindMapPanel.java:1095)
    at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.drawTopicTree(MindMapPanel.java:1079)
    at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.drawTopics(MindMapPanel.java:970)
    at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.drawOnGraphicsForConfiguration(MindMapPanel.java:934)
    at com.igormaznitsa.mindmap.swing.panel.MindMapPanel.paintComponent(MindMapPanel.java:2466)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1115)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:955)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1124)
    at java.desktop/javax.swing.JViewport.paint(JViewport.java:736)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:955)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1124)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:955)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1124)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:955)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1124)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:955)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1124)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:955)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1124)
    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:955)
    at com.intellij.openapi.fileEditor.impl.EditorTabs.paintChildren(EditorTabbedContainer.kt:599)
    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1124)
    at java.desktop/javax.swing.JComponent.paintToOffscreen(JComponent.java:5312)
    at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedImpl(RepaintManager.java:1668)
    at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1643)
    at java.desktop/javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1580)
    at java.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1347)
    at java.desktop/javax.swing.JComponent._paintImmediately(JComponent.java:5260)
    at java.desktop/javax.swing.JComponent.paintImmediately(JComponent.java:5070)
    at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:882)
    at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:865)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:865)
    at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:838)
    at java.desktop/javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:787)
    at java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1909)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:789)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:740)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:734)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:759)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:685)
    at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$10(IdeEventQueue.kt:589)
    at com.intellij.openapi.application.impl.ApplicationImpl.withoutImplicitRead(ApplicationImpl.java:1508)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:589)
    at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363)
    at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:992)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
    at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:992)
    at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:400)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)
    nb-mind-map-idea (1.6.3)
raydac commented 1 year ago

could you try snapshot version of the plugin? https://github.com/raydac/netbeans-mmd-plugin/releases/download/1.6.4-S/idea-mindmap-1.6.4-SNAPSHOT.zip

krasa commented 1 year ago

Did not help, nothing in the log.

Clicking on this image produces:


2023-06-08 23:25:45,387 [  87615] SEVERE - #c.i.i.p.PluginManager - Cannot invoke "java.util.TreeMap.hashCode()" because "this.features" is null
java.lang.NullPointerException: Cannot invoke "java.util.TreeMap.hashCode()" because "this.features" is null
    at java.desktop/java.awt.Font.hashCode(Font.java:1872)
    at java.desktop/sun.font.FontDesignMetrics$MetricsKey.init(FontDesignMetrics.java:219)
    at java.desktop/sun.font.FontDesignMetrics.getMetrics(FontDesignMetrics.java:288)
    at java.desktop/sun.swing.SwingUtilities2.getFontMetrics(SwingUtilities2.java:1208)
    at java.desktop/javax.swing.JComponent.getFontMetrics(JComponent.java:1687)
    at java.desktop/javax.swing.text.WrappedPlainView.updateMetrics(WrappedPlainView.java:444)
    at java.desktop/javax.swing.text.WrappedPlainView.setSize(WrappedPlainView.java:513)
    at java.desktop/javax.swing.plaf.basic.BasicTextUI$RootView.setSize(BasicTextUI.java:1826)
    at java.desktop/javax.swing.plaf.basic.BasicTextUI.getPreferredSize(BasicTextUI.java:951)
    at java.desktop/javax.swing.plaf.basic.BasicTextAreaUI.getPreferredSize(BasicTextAreaUI.java:121)
    at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1721)
    at java.desktop/javax.swing.JTextArea.getPreferredSize(JTextArea.java:623)
    at java.desktop/javax.swing.text.JTextComponent.getPreferredScrollableViewportSize(JTextComponent.java:1999)
    at java.desktop/javax.swing.JTextArea.getPreferredScrollableViewportSize(JTextArea.java:702)
    at com.intellij.ui.components.JBViewport.getPreferredScrollableViewportSize(JBViewport.java:517)
    at com.intellij.ui.components.JBViewport$1.preferredLayoutSize(JBViewport.java:65)
    at java.desktop/java.awt.Container.lambda$preferredSize$4(Container.java:1826)
    at java.desktop/sun.awt.SunToolkit.performWithTreeLock(SunToolkit.java:2155)
    at java.desktop/java.awt.Container.preferredSize(Container.java:1824)
    at java.desktop/java.awt.Container.getPreferredSize(Container.java:1810)
    at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1723)
    at com.intellij.ui.components.JBScrollPane$Layout.preferredLayoutSize(JBScrollPane.java:820)
    at java.desktop/java.awt.Container.lambda$preferredSize$4(Container.java:1826)
    at java.desktop/sun.awt.SunToolkit.performWithTreeLock(SunToolkit.java:2155)
    at java.desktop/java.awt.Container.preferredSize(Container.java:1824)
    at java.desktop/java.awt.Container.getPreferredSize(Container.java:1810)
    at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1723)
    at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
    at java.desktop/java.awt.Container.lambda$preferredSize$4(Container.java:1826)
    at java.desktop/sun.awt.SunToolkit.performWithTreeLock(SunToolkit.java:2155)
    at java.desktop/java.awt.Container.preferredSize(Container.java:1824)
    at java.desktop/java.awt.Container.getPreferredSize(Container.java:1810)
    at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1723)
    at com.intellij.ui.components.JBPanel.getPreferredSize(JBPanel.java:114)
    at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
    at java.desktop/java.awt.Container.lambda$preferredSize$4(Container.java:1826)
    at java.desktop/sun.awt.SunToolkit.performWithTreeLock(SunToolkit.java:2155)
    at java.desktop/java.awt.Container.preferredSize(Container.java:1824)
    at java.desktop/java.awt.Container.getPreferredSize(Container.java:1810)
    at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1723)
    at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
    at java.desktop/java.awt.Container.lambda$preferredSize$4(Container.java:1826)
    at java.desktop/sun.awt.SunToolkit.performWithTreeLock(SunToolkit.java:2155)
    at java.desktop/java.awt.Container.preferredSize(Container.java:1824)
    at java.desktop/java.awt.Container.getPreferredSize(Container.java:1810)
    at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1723)
    at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
    at java.desktop/java.awt.Container.lambda$preferredSize$4(Container.java:1826)
    at java.desktop/sun.awt.SunToolkit.performWithTreeLock(SunToolkit.java:2155)
    at java.desktop/java.awt.Container.preferredSize(Container.java:1824)
    at java.desktop/java.awt.Container.getPreferredSize(Container.java:1810)
    at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1723)
    at java.desktop/javax.swing.JRootPane$RootLayout.preferredLayoutSize(JRootPane.java:867)
    at java.desktop/java.awt.Container.lambda$preferredSize$4(Container.java:1826)
    at java.desktop/sun.awt.SunToolkit.performWithTreeLock(SunToolkit.java:2155)
    at java.desktop/java.awt.Container.preferredSize(Container.java:1824)
    at java.desktop/java.awt.Container.getPreferredSize(Container.java:1810)
    at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1723)
    at java.desktop/java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:724)
    at java.desktop/java.awt.Container.lambda$preferredSize$4(Container.java:1826)
    at java.desktop/sun.awt.SunToolkit.performWithTreeLock(SunToolkit.java:2155)
    at java.desktop/java.awt.Container.preferredSize(Container.java:1824)
    at java.desktop/java.awt.Container.getPreferredSize(Container.java:1810)
    at java.desktop/java.awt.Window.lambda$pack$1(Window.java:840)
    at java.desktop/sun.awt.SunToolkit.performOnMainThreadIfNeeded(SunToolkit.java:2164)
    at java.desktop/java.awt.Window.pack(Window.java:832)
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:681)
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:467)
    at com.intellij.openapi.ui.DialogWrapper.doShow(DialogWrapper.java:1688)
    at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1646)
    at com.intellij.openapi.ui.DialogWrapper.showAndGet(DialogWrapper.java:1660)
    at com.igormaznitsa.ideamindmap.utils.IdeaUtils.plainMessageOkCancel(IdeaUtils.java:463)
    at com.igormaznitsa.ideamindmap.editor.MindMapDialogProvider.msgOkCancel(MindMapDialogProvider.java:67)
    at com.igormaznitsa.mindmap.ide.commons.preferences.FontSelectPanel$1.fireActionPerformed(FontSelectPanel.java:78)
    at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
    at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
    at java.desktop/java.awt.Component.processMouseEvent(Component.java:6657)
    at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3385)
    at java.desktop/java.awt.Component.processEvent(Component.java:6422)
    at java.desktop/java.awt.Container.processEvent(Container.java:2266)
    at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5027)
    at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
    at java.desktop/java.awt.Component.dispatchEvent(Component.java:4855)
    at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4954)
    at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4581)
    at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4522)
    at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
    at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2808)
    at java.desktop/java.awt.Component.dispatchEvent(Component.java:4855)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:791)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:740)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:734)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:764)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:762)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:761)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:685)
    at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.kt:633)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:588)
    at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363)
    at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:992)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
    at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:992)
    at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:869)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:405)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:121)
    at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191)
    at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236)
    at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
    at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234)
    at java.desktop/java.awt.Dialog.lambda$show$2(Dialog.java:1081)
    at java.desktop/sun.awt.SunToolkit.performOnMainThreadIfNeeded(SunToolkit.java:2164)
    at java.desktop/java.awt.Dialog.show(Dialog.java:1041)
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:742)
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:467)
    at com.intellij.openapi.ui.DialogWrapper.doShow(DialogWrapper.java:1688)
    at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1646)
    at com.intellij.ide.actions.ShowSettingsUtilImpl.showSettingsDialog(ShowSettingsUtilImpl.java:90)
    at com.intellij.ide.actions.ShowSettingsAction.perform(ShowSettingsAction.java:60)
    at com.intellij.ide.actions.ShowSettingsAction.actionPerformed(ShowSettingsAction.java:47)
    at com.intellij.openapi.actionSystem.ex.ActionUtil.doPerformActionOrShowPopup(ActionUtil.java:333)
    at com.intellij.openapi.keymap.impl.ActionProcessor.performAction(ActionProcessor.java:47)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$myActionProcessor$1.performAction(IdeKeyEventDispatcher.kt:502)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcherKt.doPerformActionInner$lambda$5$lambda$4(IdeKeyEventDispatcher.kt:865)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
    at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcherKt.doPerformActionInner$lambda$5(IdeKeyEventDispatcher.kt:865)
    at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:356)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcherKt.doPerformActionInner(IdeKeyEventDispatcher.kt:863)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcherKt.access$doPerformActionInner(IdeKeyEventDispatcher.kt:1)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction$intellij_platform_ide_impl(IdeKeyEventDispatcher.kt:587)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.kt:513)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processActionOrWaitSecondStroke(IdeKeyEventDispatcher.kt:454)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.inInitState(IdeKeyEventDispatcher.kt:447)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.kt:309)
    at com.intellij.ide.IdeEventQueue.dispatchKeyEvent(IdeEventQueue.kt:617)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:587)
    at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363)
    at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:992)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:113)
    at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:992)
    at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:869)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:405)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)
2023-06-08 23:25:45,389 [  87617] SEVERE - #c.i.i.p.PluginManager - IntelliJ IDEA 2023.2 EAP  Build #IU-232.6734.9
2023-06-08 23:25:45,389 [  87617] SEVERE - #c.i.i.p.PluginManager - JDK: 17.0.7; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o.
2023-06-08 23:25:45,389 [  87617] SEVERE - #c.i.i.p.PluginManager - OS: Windows 10
2023-06-08 23:25:45,390 [  87618] SEVERE - #c.i.i.p.PluginManager - Plugin to blame: IDEA Mind Map version: 1.6.4-SNAPSHOT
2023-06-08 23:25:45,398 [  87626] SEVERE - #c.i.i.p.PluginManager - Cannot invoke "java.util.TreeMap.hashCode()" because "this.features" is null
java.lang.NullPointerException: Cannot invoke "java.util.TreeMap.hashCode()" because "this.features" is null
    at java.desktop/java.awt.Font.hashCode(Font.java:1872)
    at java.desktop/sun.font.FontDesignMetrics$MetricsKey.init(FontDesignMetrics.java:219)
    at java.desktop/sun.font.FontDesignMetrics.getMetrics(FontDesignMetrics.java:288)
    at java.desktop/sun.swing.SwingUtilities2.getFontMetrics(SwingUtilities2.java:1208)
    at java.desktop/javax.swing.JComponent.getFontMetrics(JComponent.java:1687)
    at java.desktop/javax.swing.text.WrappedPlainView.updateMetrics(WrappedPlainView.java:444)
    at java.desktop/javax.swing.text.WrappedPlainView.setSize(WrappedPlainView.java:513)
    at java.desktop/javax.swing.plaf.basic.BasicTextUI$RootView.setSize(BasicTextUI.java:1826)
    at java.desktop/javax.swing.plaf.basic.BasicTextUI.getPreferredSize(BasicTextUI.java:951)
    at java.desktop/javax.swing.plaf.basic.BasicTextAreaUI.getPreferredSize(BasicTextAreaUI.java:121)
    at java.desktop/javax.swing.JComponent.getPreferredSize(JComponent.java:1721)
    at java.desktop/javax.swing.JTextArea.getPreferredSize(JTextArea.java:623)
    at com.intellij.ui.components.JBScrollPane$Layout.layoutContainer(JBScrollPane.java:532)
    at java.desktop/java.awt.Container.layout(Container.java:1541)
    at java.desktop/java.awt.Container.doLayout(Container.java:1530)
    at java.desktop/java.awt.Container.validateTree(Container.java:1725)
    at java.desktop/java.awt.Container.validateTree(Container.java:1734)
    at java.desktop/java.awt.Container.validateTree(Container.java:1734)
    at java.desktop/java.awt.Container.validateTree(Container.java:1734)
    at java.desktop/java.awt.Container.validateTree(Container.java:1734)
    at java.desktop/java.awt.Container.validateTree(Container.java:1734)
    at java.desktop/java.awt.Container.validateTree(Container.java:1734)
    at java.desktop/java.awt.Container.validateTree(Container.java:1734)
    at java.desktop/java.awt.Container.lambda$validate$3(Container.java:1659)
    at java.desktop/sun.awt.SunToolkit.performWithTreeLock(SunToolkit.java:2155)
    at java.desktop/java.awt.Container.validate(Container.java:1648)
    at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2806)
    at java.desktop/java.awt.Component.dispatchEvent(Component.java:4855)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:791)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:740)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:734)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:764)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:762)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:761)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:685)
    at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$10(IdeEventQueue.kt:589)
    at com.intellij.openapi.application.impl.ApplicationImpl.withoutImplicitRead(ApplicationImpl.java:1508)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:589)
    at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363)
    at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:992)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:113)
    at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:992)
    at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:869)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:405)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:121)
    at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191)
    at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236)
    at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
    at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234)
    at java.desktop/java.awt.Dialog.lambda$show$2(Dialog.java:1081)
    at java.desktop/sun.awt.SunToolkit.performOnMainThreadIfNeeded(SunToolkit.java:2164)
    at java.desktop/java.awt.Dialog.show(Dialog.java:1041)
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:742)
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:467)
    at com.intellij.openapi.ui.DialogWrapper.doShow(DialogWrapper.java:1688)
    at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1646)
    at com.intellij.ide.actions.ShowSettingsUtilImpl.showSettingsDialog(ShowSettingsUtilImpl.java:90)
    at com.intellij.ide.actions.ShowSettingsAction.perform(ShowSettingsAction.java:60)
    at com.intellij.ide.actions.ShowSettingsAction.actionPerformed(ShowSettingsAction.java:47)
    at com.intellij.openapi.actionSystem.ex.ActionUtil.doPerformActionOrShowPopup(ActionUtil.java:333)
    at com.intellij.openapi.keymap.impl.ActionProcessor.performAction(ActionProcessor.java:47)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$myActionProcessor$1.performAction(IdeKeyEventDispatcher.kt:502)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcherKt.doPerformActionInner$lambda$5$lambda$4(IdeKeyEventDispatcher.kt:865)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
    at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcherKt.doPerformActionInner$lambda$5(IdeKeyEventDispatcher.kt:865)
    at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:356)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcherKt.doPerformActionInner(IdeKeyEventDispatcher.kt:863)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcherKt.access$doPerformActionInner(IdeKeyEventDispatcher.kt:1)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction$intellij_platform_ide_impl(IdeKeyEventDispatcher.kt:587)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.kt:513)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processActionOrWaitSecondStroke(IdeKeyEventDispatcher.kt:454)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.inInitState(IdeKeyEventDispatcher.kt:447)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.kt:309)
    at com.intellij.ide.IdeEventQueue.dispatchKeyEvent(IdeEventQueue.kt:617)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:587)
    at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:791)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363)
    at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:992)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:113)
    at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:992)
    at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:869)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:405)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)

I exported the settings, reseted to default and it worked. Importing did not break it again and I can no longer reproduce it :(

#SciaReto editor settings
#Thu Jun 08 23:25:41 CEST 2023
MindMapPanelConfig.birdseyeBackground=-1869559553
MindMapPanelConfig.birdseyeFront=-1879029100
MindMapPanelConfig.birdseyeMouseButton=BUTTON_3
MindMapPanelConfig.collapsatorBackgroundColor=-1
MindMapPanelConfig.collapsatorBorderColor=-12566464
MindMapPanelConfig.collapsatorBorderWidth=1.0
MindMapPanelConfig.collapsatorSize=16
MindMapPanelConfig.connectorColor=-1
MindMapPanelConfig.connectorWidth=1.5
MindMapPanelConfig.drawBackground=true
MindMapPanelConfig.dropShadow=true
MindMapPanelConfig.elementBorderColor=-16777216
MindMapPanelConfig.elementBorderWidth=1.0
MindMapPanelConfig.firstLevelBackgroundColor=-5128244
MindMapPanelConfig.firstLevelHorizontalInset=48
MindMapPanelConfig.firstLevelTextColor=-16777216
MindMapPanelConfig.firstLevelVerticalInset=32
MindMapPanelConfig.font.name=Arial
MindMapPanelConfig.font.size=18
MindMapPanelConfig.font.style=0
MindMapPanelConfig.gridColor=-12364185
MindMapPanelConfig.gridStep=32
MindMapPanelConfig.horizontalBlockGap=5
MindMapPanelConfig.jumpLinkColor=-16711681
MindMapPanelConfig.jumpLinkWidth=1.5
MindMapPanelConfig.otherLevelBackgroundColor=-131587
MindMapPanelConfig.otherLevelHorizontalInset=32
MindMapPanelConfig.otherLevelTextColor=-16777216
MindMapPanelConfig.otherLevelVerticalInset=16
MindMapPanelConfig.paperColor=-10388588
MindMapPanelConfig.paperMargins=20
MindMapPanelConfig.renderQuality=QUALITY
MindMapPanelConfig.rootBackgroundColor=-16573903
MindMapPanelConfig.rootTextColor=-1
MindMapPanelConfig.scale=1.0
MindMapPanelConfig.scaleModifiers=2
MindMapPanelConfig.selectLineColor=-14336
MindMapPanelConfig.selectLineGap=5
MindMapPanelConfig.selectLineWidth=3.0
MindMapPanelConfig.shadowColor=805306368
MindMapPanelConfig.shadowOffset=5.0
MindMapPanelConfig.showGrid=true
MindMapPanelConfig.smartTextPaste=false
MindMapPanelConfig.textMargins=10
mapShortCut.addChildAndStartEdit=addChildAndStartEdit*900000000
mapShortCut.addSiblingAndStartEdit=addSiblingAndStartEdit*A00000000
mapShortCut.birdsEyeModifiers=birdsEyeModifiers*7FFFFFFF00000003
mapShortCut.cancelEdit=cancelEdit*1B00000000
mapShortCut.deleteSelectedTopic=deleteSelectedTopic*7F00000000
mapShortCut.focusToRootOrStartEdit=focusToRootOrStartEdit*2000000002
mapShortCut.moveFocusDown=moveFocusDown*2800000000
mapShortCut.moveFocusDownAddFocused=moveFocusDownAddFocused*2800000001
mapShortCut.moveFocusLeft=moveFocusLeft*2500000000
mapShortCut.moveFocusLeftAddFocused=moveFocusLeftAddFocused*2500000001
mapShortCut.moveFocusRight=moveFocusRight*2700000000
mapShortCut.moveFocusRightAddFocused=moveFocusRightAddFocused*2700000001
mapShortCut.moveFocusUp=moveFocusUp*2600000000
mapShortCut.moveFocusUpAddFocused=moveFocusUpAddFocused*2600000001
mapShortCut.nextLineInTopicText=nextLineInTopicText*A00000001
mapShortCut.showPopupMenu=showPopupMenu*200000000A
mapShortCut.topicFold=topicFold*2D00000000
mapShortCut.topicFoldAll=topicFoldAll*2D00000008
mapShortCut.topicUnfold=topicUnfold*3D00000000
mapShortCut.topicUnfoldAll=topicUnfoldAll*3D00000008
mapShortCut.zoomIn=zoomIn*3D00000002
mapShortCut.zoomOut=zoomOut*2D00000002
mapShortCut.zoomReset=zoomReset*3000000002
krasa commented 1 year ago

Imho platform bug https://github.com/JetBrains/JetBrainsRuntime/commit/abacc385f1ce6a68e24419880f57ee227b09e53d#diff-bcdd550fc2d56cb8847f4d54b3430a75941f275b32e4bedf7b99124942077fc1R1868

raydac commented 1 year ago

it looks like that they lost back compatibility during java serialization of font object, they don't provide default version of "features" for restored object saved by previous IDE version

raydac commented 1 year ago

I have created issue in their tracker https://youtrack.jetbrains.com/issue/IDEA-322126/NPE-for-de-serialized-Font-object-in-EAP-2023.2