Closed DavidHulsman closed 5 years ago
Thanks for reporting!
@Sir4ur0n also has this issue. I can not reproduce this issue on MacOS and Linux. I'am also not aware of changing this part of the plugin after beta35.
@ice1000 Do you have an idea? Maybe related to your changes?
I'll investigate. Will give feedback this weekend (final week, sorry)
Did you see any exception thrown after closing the run config window? Could you please include the stacktrace here?
I'm not sure if I can reproduce this and I'm busy with my final exam these few days so I have no time to repro right now. A stacktrace may indicate the fix directly (to save time).
Also, I'm not sure if it's my fault. But I'm sure there probably is an exception thrown (which is the primary cause of non-main editor UI freezes).
I know the OP may not be interested in helping us solving the problem so I tried myself anyway. Good news: reproduced!
java.lang.NullPointerException
at intellij.haskell.runconfig.console.HaskellConsoleConfigurationForm.<init>(HaskellConsoleConfigurationForm.java:16)
at intellij.haskell.runconfig.console.HaskellConsoleConfiguration.getConfigurationEditor(HaskellConsoleConfiguration.scala:20)
at intellij.haskell.runconfig.console.HaskellConsoleConfiguration.getConfigurationEditor(HaskellConsoleConfiguration.scala:14)
at com.intellij.execution.impl.ConfigurationSettingsEditor.<init>(ConfigurationSettingsEditor.java:198)
at com.intellij.execution.impl.ConfigurationSettingsEditorWrapper.<init>(ConfigurationSettingsEditorWrapper.java:49)
at com.intellij.execution.impl.SingleConfigurationConfigurable.<init>(SingleConfigurationConfigurable.java:58)
at com.intellij.execution.impl.SingleConfigurationConfigurable.editSettings(SingleConfigurationConfigurable.java:93)
at com.intellij.execution.impl.RunConfigurable.getSafeUserObject(RunConfigurable.kt:352)
at com.intellij.execution.impl.RunConfigurable.access$getSafeUserObject(RunConfigurable.kt:73)
at com.intellij.execution.impl.RunConfigurable$initTree$3.valueChanged(RunConfigurable.kt:239)
at javax.swing.JTree.fireValueChanged(JTree.java:2927)
at javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:3391)
at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:635)
at com.intellij.ui.treeStructure.Tree$MySelectionModel.fireValueChanged(Tree.java:657)
at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1093)
at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:294)
at javax.swing.JTree.setSelectionPaths(JTree.java:1647)
at javax.swing.JTree.setSelectionRows(JTree.java:1729)
at javax.swing.JTree.setSelectionRow(JTree.java:1704)
at com.intellij.util.ui.tree.TreeUtil.lambda$showAndSelect$10(TreeUtil.java:565)
at com.intellij.util.ui.tree.TreeUtil.showAndSelect(TreeUtil.java:600)
at com.intellij.util.ui.tree.TreeUtil.showRowCentered(TreeUtil.java:510)
at com.intellij.util.ui.tree.TreeUtil.showRowCentered(TreeUtil.java:501)
at com.intellij.util.ui.tree.TreeUtil.showRowCentred(TreeUtil.java:496)
at com.intellij.util.ui.tree.TreeUtil.selectPath(TreeUtil.java:427)
at com.intellij.util.ui.tree.TreeUtil.selectInTree(TreeUtil.java:909)
at com.intellij.util.ui.tree.TreeUtil.selectInTree(TreeUtil.java:897)
at com.intellij.execution.impl.RunConfigurable.selectConfiguration(RunConfigurable.kt:307)
at com.intellij.execution.impl.RunConfigurable.access$selectConfiguration(RunConfigurable.kt:73)
at com.intellij.execution.impl.RunConfigurable$selectConfigurableOnShow$1.run(RunConfigurable.kt:283)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:732)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:719)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:668)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:363)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
at java.awt.Dialog.show(Dialog.java:1077)
at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:698)
at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:430)
at com.intellij.openapi.ui.DialogWrapper.invokeShow(DialogWrapper.java:1681)
at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1630)
at com.intellij.execution.actions.EditRunConfigurationsAction.actionPerformed(EditRunConfigurationsAction.java:48)
at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:258)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:275)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:249)
at com.intellij.ui.popup.ActionPopupStep.performAction(ActionPopupStep.java:200)
at com.intellij.ui.popup.ActionPopupStep.performAction(ActionPopupStep.java:190)
at com.intellij.ui.popup.ActionPopupStep.lambda$onChosen$2(ActionPopupStep.java:184)
at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:195)
at com.intellij.ui.popup.AbstractPopup.lambda$dispose$12(AbstractPopup.java:1417)
at com.intellij.util.ui.UIUtil.invokeLaterIfNeeded(UIUtil.java:3048)
at com.intellij.ide.IdeEventQueue.ifFocusEventsInTheQueue(IdeEventQueue.java:172)
at com.intellij.ide.IdeEventQueue.executeWhenAllFocusEventsLeftTheQueue(IdeEventQueue.java:124)
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:179)
at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.doWhenFocusSettlesDown(IdeFocusManagerImpl.java:58)
at com.intellij.ui.popup.AbstractPopup.dispose(AbstractPopup.java:1413)
at com.intellij.ui.popup.WizardPopup.dispose(WizardPopup.java:160)
at com.intellij.ui.popup.list.ListPopupImpl.dispose(ListPopupImpl.java:308)
at com.intellij.ui.popup.PopupFactoryImpl$ActionGroupPopup.dispose(PopupFactoryImpl.java:279)
at com.intellij.openapi.util.Disposer$1.execute(Disposer.java:48)
at com.intellij.openapi.util.Disposer$1.execute(Disposer.java:44)
at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:138)
at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:107)
at com.intellij.openapi.util.objectTree.ObjectTree.executeActionWithRecursiveGuard(ObjectTree.java:182)
at com.intellij.openapi.util.objectTree.ObjectNode.execute(ObjectNode.java:107)
at com.intellij.openapi.util.objectTree.ObjectTree.executeAll(ObjectTree.java:151)
at com.intellij.openapi.util.Disposer.dispose(Disposer.java:129)
at com.intellij.openapi.util.Disposer.dispose(Disposer.java:125)
at com.intellij.ui.popup.WizardPopup.disposeAllParents(WizardPopup.java:263)
at com.intellij.ui.popup.list.ListPopupImpl.handleNextStep(ListPopupImpl.java:444)
at com.intellij.ui.popup.list.ListPopupImpl._handleSelect(ListPopupImpl.java:397)
at com.intellij.ui.popup.list.ListPopupImpl.handleSelect(ListPopupImpl.java:343)
at com.intellij.ui.popup.PopupFactoryImpl$ActionGroupPopup.handleSelect(PopupFactoryImpl.java:299)
at com.intellij.ui.popup.list.ListPopupImpl$MyMouseListener.mouseReleased(ListPopupImpl.java:503)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:290)
at java.awt.Component.processMouseEvent(Component.java:6548)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3325)
at com.intellij.ui.popup.list.ListPopupImpl$MyList.processMouseEvent(ListPopupImpl.java:557)
at java.awt.Component.processEvent(Component.java:6313)
at java.awt.Container.processEvent(Container.java:2237)
at java.awt.Component.dispatchEventImpl(Component.java:4903)
at java.awt.Container.dispatchEventImpl(Container.java:2295)
at java.awt.Component.dispatchEvent(Component.java:4725)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
at java.awt.Container.dispatchEventImpl(Container.java:2281)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4725)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764)
at java.awt.EventQueue.access$500(EventQueue.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:715)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
at java.awt.EventQueue$4.run(EventQueue.java:737)
at java.awt.EventQueue$4.run(EventQueue.java:735)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:719)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:664)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:363)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
I get it! It's because when @rikvdkleij is building this project, he didn't have his "UI-Designer" plugin enabled (or incorrectly configured). If you use the distribution compiled by me (can be found in my recent pull requests, there's a lot of them and there'll be more in the near future so I'm not specifying any here), you'll have no problem.
@rikvdkleij Please re-check your IntelliJ IDEA configuration, did you have your UI-Designer enabled? Did you configured it to generate the UI code to "Runtime Classes"? (related documentation can be found in https://www.jetbrains.com/help/idea/gui-designer-output-options.html).
@ice1000 Great that you can reproduce this problem!!
I will check but I created that form long ago. So why is this "suddenly" a problem
Also used the same Intellij version/config for building the latest releases.
And how did you reproduce the problem?
@rikvdkleij I've downloaded and installed the beta release from the release page. BTW my final exams are all finished! But I'm going back to my home country tomorrow so I still won't have a lot of time this week.
You may try recompile the whole project with your IDE settings ensured.
Another possibility is, the Swing components are not working properly on Windows. Will check for this later.
I probably should check the decompiled classes since IntelliJ's doing bytecode injection during compiling
@ice1000 Thanks for all your work!!
But I'm going back to my home country tomorrow so I still won't have a lot of time this week.
Have a safe trip.
Thank you!
Tried the distribution compiled by me, uploaded in #358
There's no problem with creating new run configs.
@ice1000
Please re-check your IntelliJ IDEA configuration, did you have your UI-Designer enabled?
Yes,it is enabled.
And settings are also okay.
@rikvdkleij Then it might be some IntelliJ bugs. All the zips compiled by me work like a charm.
Released beta37, hopefully this release fixes this issue.
Can someone check if my build works on Windows?
I can confirm it beta37 works again!
Sorry I haven't been able to help more. I got midterms at the end of this week, so I had to study and catch up to everything :)
I can confirm it beta37 works again!
Super! Thanks!
Ever since updating to 1.0.0-beta36 I haven't been able to add a new configuration (or alter any existing ones), as the buttons that add any (REPL|Build|Test) config simply do nothing. When I select an existing config, the menu locks up and doesn't show anything.
Tested on Intellij 2018.2.5, 2018.2.7 and 2018.3.1 - none of them work with beta36
For now I've rolled back to 1.0.0-beta35 and now things work again.