Giter Site home page Giter Site logo

intellij-uml-javascript's Issues

Unable to open UML other than popup

The Plugin works as expected when opening the diagram as a popup.
If opened normally it does not show.

Using IntelliJ IDEA Ultimate 2021.3.1 Build #IU-213.6461.79

I'm new to git so if anything more is needed please tell me.

EDIT: Added product specifier "IDEA"

Read access is allowed from inside read-action

I installed your the awesome plugin but I get a issue with read access. Probably it is problem with 2023.3 Threading Model Changes
https://jb.gg/ij-platform-threading

com.intellij.openapi.diagnostic.RuntimeExceptionWithAttachments: Read access is allowed from inside read-action (see Application.runReadAction()); see https://jb.gg/ij-platform-threading for details
Current thread: Thread[AWT-EventQueue-0,6,main] 96383434 (EventQueue.isDispatchThread()=true)
SystemEventQueueThread: (same)
	at com.intellij.util.concurrency.ThreadingAssertions.createThreadAccessException(ThreadingAssertions.java:149)
	at com.intellij.util.concurrency.ThreadingAssertions.softAssertReadAccess(ThreadingAssertions.java:107)
	at com.intellij.openapi.application.impl.ApplicationImpl.assertReadAccessAllowed(ApplicationImpl.java:1012)
	at com.intellij.psi.impl.source.PsiFileImpl.assertReadAccessAllowed(PsiFileImpl.java:182)
	at com.intellij.psi.impl.source.PsiFileImpl.getStubTree(PsiFileImpl.java:612)
	at com.intellij.psi.impl.source.SpineRef.getStub(SpineRef.java:27)
	at com.intellij.extapi.psi.StubBasedPsiElementBase.getStub(StubBasedPsiElementBase.java:333)
	at com.intellij.extapi.psi.StubBasedPsiElementBase.getContext(StubBasedPsiElementBase.java:281)
	at com.intellij.lang.javascript.psi.resolve.JSResolveUtil.findParent(JSResolveUtil.java:729)
	at com.intellij.lang.javascript.refactoring.JSVisibilityUtil.getPresentableAccessModifier(JSVisibilityUtil.java:71)
	at com.intellij.lang.javascript.refactoring.JSVisibilityUtil.getAccessModifierIcon(JSVisibilityUtil.java:48)
	at com.intellij.lang.javascript.psi.impl.JSFunctionImpl.getFunctionIcon(JSFunctionImpl.java:223)
	at com.intellij.lang.javascript.psi.ecma6.impl.TypeScriptFunctionImpl.getIcon(TypeScriptFunctionImpl.java:107)
	at org.vepanimas.uml.javascript.JavaScriptUmlElementManager.getItemIcon(JavaScriptUmlElementManager.java:212)
	at com.intellij.diagram.DiagramElementManager.getItemIcon(DiagramElementManager.java:146)
	at com.intellij.diagram.components.DiagramNodeItemComponent$MyIconable.getIcon(DiagramNodeItemComponent.java:218)
	at com.intellij.diagram.components.DiagramNodeDeferredIconsEvaluator.lambda$getUnevaluatedIcon$0(DiagramNodeDeferredIconsEvaluator.java:59)
	at com.intellij.util.SlowOperations.allowSlowOperations(SlowOperations.java:195)
	at com.intellij.diagram.components.DiagramNodeDeferredIconsEvaluator.getUnevaluatedIcon(DiagramNodeDeferredIconsEvaluator.java:59)
	at com.intellij.diagram.components.DiagramNodeDeferredIconsEvaluator.registerEvaluationOrGetReadyIcon(DiagramNodeDeferredIconsEvaluator.java:66)
	at com.intellij.diagram.components.DiagramNodeItemComponent.setUpIcon(DiagramNodeItemComponent.java:78)
	at com.intellij.diagram.components.DiagramNodeItemComponent.setUp(DiagramNodeItemComponent.java:66)
	at com.intellij.diagram.components.DiagramNodeBodyComponent.getListCellRendererComponent(DiagramNodeBodyComponent.java:178)
	at com.intellij.ui.ExpandedItemListCellRendererWrapper.getListCellRendererComponent(ExpandedItemListCellRendererWrapper.java:24)
	at java.desktop/javax.swing.plaf.basic.BasicListUI.paintCell(BasicListUI.java:275)
	at com.intellij.ui.components.WideSelectionListUI.paintCell(WideSelectionListUI.java:65)
	at java.desktop/javax.swing.plaf.basic.BasicListUI.paintImpl(BasicListUI.java:383)
	at java.desktop/javax.swing.plaf.basic.BasicListUI.paint(BasicListUI.java:306)
	at com.intellij.ui.components.WideSelectionListUI.paint(WideSelectionListUI.java:34)
	at java.desktop/javax.swing.plaf.ComponentUI.update(ComponentUI.java:161)
	at java.desktop/javax.swing.JComponent.paintComponent(JComponent.java:845)
	at com.intellij.ui.components.JBList.paintComponent(JBList.java:189)
	at java.desktop/javax.swing.JComponent.paint(JComponent.java:1115)
	at com.intellij.ui.components.JBList.paint(JBList.java:110)
	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 com.intellij.diagram.components.DiagramNodeContainer.doPaintComponent(DiagramNodeContainer.java:273)
	at com.intellij.diagram.components.DiagramNodeContainer$MyRenderCacheHandler.fillRenderCache(DiagramNodeContainer.java:489)
	at com.intellij.diagram.components.DiagramNodeContainer$MyRenderCacheHandler.computeUpToDateCacheIfPossible(DiagramNodeContainer.java:451)
	at com.intellij.diagram.components.DiagramNodeContainer$MyRenderCacheHandler.lambda$getRenderCache$1(DiagramNodeContainer.java:361)
	at java.base/java.util.Map.computeIfAbsent(Map.java:1054)
	at com.intellij.diagram.components.DiagramNodeContainer$MyRenderCacheHandler.getRenderCache(DiagramNodeContainer.java:360)
	at com.intellij.diagram.components.DiagramNodeContainer$MyRenderCacheHandler.paint(DiagramNodeContainer.java:414)
	at com.intellij.diagram.components.DiagramNodeContainer.paint(DiagramNodeContainer.java:224)
	at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:955)
	at java.desktop/javax.swing.JComponent.paint(JComponent.java:1124)
	at com.intellij.openapi.graph.impl.view.FastNodeCellRendererPainter.paintNode(FastNodeCellRendererPainter.java:55)
	at h.j.u.S(Unknown Source)
	at h.j.u.h(Unknown Source)
	at h.j.Jx.paint(Unknown Source)
	at h.j.SW.h(Unknown Source)
	at h.j.j0.S(Unknown Source)
	at h.j.SW.S(Unknown Source)
	at h.j.SW.h(Unknown Source)
	at h.j.jl.J(Unknown Source)
	at h.j.jl.paintComponent(Unknown Source)
	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.JComponent.paintChildren(JComponent.java:955)
	at java.desktop/javax.swing.JComponent.paint(JComponent.java:1124)
	at com.intellij.uml.components.UmlGraphZoomableViewport.paint(UmlGraphZoomableViewport.java:87)
	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 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:613)
	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.JLayeredPane.paint(JLayeredPane.java:586)
	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.JLayeredPane.paint(JLayeredPane.java:586)
	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.JLayeredPane.paint(JLayeredPane.java:586)
	at java.desktop/javax.swing.JComponent.paintToOffscreen(JComponent.java:5312)
	at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedFPScales(RepaintManager.java:1732)
	at java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1641)
	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:792)
	at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739)
	at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:733)
	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:695)
	at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$12(IdeEventQueue.kt:589)
	at com.intellij.openapi.application.impl.RwLockHolder.runWithoutImplicitRead(RwLockHolder.kt:44)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:589)
	at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:72)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:355)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:354)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:793)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:354)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:349)
	at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1014)
	at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:106)
	at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1014)
	at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:349)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:386)
	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)

Dependency arrows are pointing in the wrong direction

When you generate a diagram and there is a relation of dependency between two classes or between a class and an interface, the arrow that is being drawn (a dotted line with an open arrow at the end) is pointing in the wrong way. Like if I have class A that is dependent on class B (A has a property of type B). the arrow should be pointing from A to B. Currently it's the other way around. Check this as a reference.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.