Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Selection not released in editor #239

Open
rossduncan opened this issue Aug 22, 2018 · 0 comments
Open

Selection not released in editor #239

rossduncan opened this issue Aug 22, 2018 · 0 comments
Labels

Comments

@rossduncan
Copy link
Member

This is hard to reproduce, but happens not infrequently. Sometimes when a subgraph is selected in the editor it is impossible to deselect without changing tools. This means that every subsequent mouse-down is interpreted as a drag of the previously selected subgraph. The correct behaviour is that click should deselect the current selection and select the clicked on thing (if any).

Here is the resulting stack trace that spews when this occurs.

[info] 10:21:25: Simproc: basic-simp: Finished 0.076s
[error] Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: Index -1 out-of-bounds for length 5
[error] 	at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
[error] 	at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
[error] 	at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
[error] 	at java.base/java.util.Objects.checkIndex(Objects.java:372)
[error] 	at java.base/java.util.ArrayList.get(ArrayList.java:440)
[error] 	at java.desktop/javax.swing.JTabbedPane.setTitleAt(JTabbedPane.java:1323)
[error] 	at scala.swing.TabbedPane$Page.title_$eq(TabbedPane.scala:42)
[error] 	at quanto.gui.ClosablePage.title_$eq(ClosableTabbedPane.scala:22)
[error] 	at quanto.gui.DocumentPage$$anonfun$1.applyOrElse(DocumentPage.scala:19)
[error] 	at quanto.gui.DocumentPage$$anonfun$1.applyOrElse(DocumentPage.scala:17)
[error] 	at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:34)
[error] 	at scala.swing.Reactions$Impl.$anonfun$apply$1(Reactions.scala:24)
[error] 	at scala.swing.Reactions$Impl.$anonfun$apply$1$adapted(Reactions.scala:24)
[error] 	at scala.collection.immutable.List.foreach(List.scala:389)
[error] 	at scala.collection.generic.TraversableForwarder.foreach(TraversableForwarder.scala:35)
[error] 	at scala.collection.generic.TraversableForwarder.foreach$(TraversableForwarder.scala:35)
[error] 	at scala.collection.mutable.ListBuffer.foreach(ListBuffer.scala:44)
[error] 	at scala.swing.Reactions$Impl.apply(Reactions.scala:24)
[error] 	at scala.swing.Reactions$Impl.apply(Reactions.scala:18)
[error] 	at scala.swing.Publisher.$anonfun$publish$1(Publisher.scala:46)
[error] 	at scala.swing.Publisher.$anonfun$publish$1$adapted(Publisher.scala:46)
[error] 	at scala.collection.Iterator.foreach(Iterator.scala:944)
[error] 	at scala.collection.Iterator.foreach$(Iterator.scala:944)
[error] 	at scala.swing.SingleRefCollection$$anon$4.foreach(Publisher.scala:108)
[error] 	at scala.collection.IterableLike.foreach(IterableLike.scala:71)
[error] 	at scala.collection.IterableLike.foreach$(IterableLike.scala:70)
[error] 	at scala.swing.RefSet.foreach(Publisher.scala:165)
[error] 	at scala.swing.Publisher.publish(Publisher.scala:46)
[error] 	at scala.swing.Publisher.publish$(Publisher.scala:46)
[error] 	at quanto.gui.Document.publish(Document.scala:25)
[error] 	at quanto.gui.Document$$anonfun$1.applyOrElse(Document.scala:254)
[error] 	at quanto.gui.Document$$anonfun$1.applyOrElse(Document.scala:252)
[error] 	at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:34)
[error] 	at scala.swing.Reactions$Impl.$anonfun$apply$1(Reactions.scala:24)
[error] 	at scala.swing.Reactions$Impl.$anonfun$apply$1$adapted(Reactions.scala:24)
[error] 	at scala.collection.immutable.List.foreach(List.scala:389)
[error] 	at scala.collection.generic.TraversableForwarder.foreach(TraversableForwarder.scala:35)
[error] 	at scala.collection.generic.TraversableForwarder.foreach$(TraversableForwarder.scala:35)
[error] 	at scala.collection.mutable.ListBuffer.foreach(ListBuffer.scala:44)
[error] 	at scala.swing.Reactions$Impl.apply(Reactions.scala:24)
[error] 	at scala.swing.Reactions$Impl.apply(Reactions.scala:18)
[error] 	at scala.swing.Publisher.$anonfun$publish$1(Publisher.scala:46)
[error] 	at scala.swing.Publisher.$anonfun$publish$1$adapted(Publisher.scala:46)
[error] 	at scala.collection.Iterator.foreach(Iterator.scala:944)
[error] 	at scala.collection.Iterator.foreach$(Iterator.scala:944)
[error] 	at scala.swing.SingleRefCollection$$anon$4.foreach(Publisher.scala:108)
[error] 	at scala.collection.IterableLike.foreach(IterableLike.scala:71)
[error] 	at scala.collection.IterableLike.foreach$(IterableLike.scala:70)
[error] 	at scala.swing.RefSet.foreach(Publisher.scala:165)
[error] 	at scala.swing.Publisher.publish(Publisher.scala:46)
[error] 	at scala.swing.Publisher.publish$(Publisher.scala:46)
[error] 	at quanto.gui.UndoStack.publish(UndoStack.scala:15)
[error] 	at quanto.gui.UndoStack.commit(UndoStack.scala:58)
[error] 	at quanto.gui.UndoStack.register(UndoStack.scala:78)
[error] 	at quanto.gui.GraphEditController.quanto$gui$GraphEditController$$addBBox(GraphEditController.scala:244)
[error] 	at quanto.gui.GraphEditController$$anonfun$2.applyOrElse(GraphEditController.scala:738)
[error] 	at quanto.gui.GraphEditController$$anonfun$2.applyOrElse(GraphEditController.scala:493)
[error] 	at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:34)
[error] 	at scala.swing.Reactions$Impl.$anonfun$apply$1(Reactions.scala:24)
[error] 	at scala.swing.Reactions$Impl.$anonfun$apply$1$adapted(Reactions.scala:24)
[error] 	at scala.collection.immutable.List.foreach(List.scala:389)
[error] 	at scala.collection.generic.TraversableForwarder.foreach(TraversableForwarder.scala:35)
[error] 	at scala.collection.generic.TraversableForwarder.foreach$(TraversableForwarder.scala:35)
[error] 	at scala.collection.mutable.ListBuffer.foreach(ListBuffer.scala:44)
[error] 	at scala.swing.Reactions$Impl.apply(Reactions.scala:24)
[error] 	at scala.swing.Reactions$Impl.apply(Reactions.scala:18)
[error] 	at scala.swing.Publisher.$anonfun$publish$1(Publisher.scala:46)
[error] 	at scala.swing.Publisher.$anonfun$publish$1$adapted(Publisher.scala:46)
[error] 	at scala.collection.Iterator.foreach(Iterator.scala:944)
[error] 	at scala.collection.Iterator.foreach$(Iterator.scala:944)
[error] 	at scala.swing.SingleRefCollection$$anon$4.foreach(Publisher.scala:108)
[error] 	at scala.collection.IterableLike.foreach(IterableLike.scala:71)
[error] 	at scala.collection.IterableLike.foreach$(IterableLike.scala:70)
[error] 	at scala.swing.RefSet.foreach(Publisher.scala:165)
[error] 	at scala.swing.Publisher.publish(Publisher.scala:46)
[error] 	at scala.swing.Publisher.publish$(Publisher.scala:46)
[error] 	at scala.swing.Component$mouse$$anon$3.publish(Component.scala:125)
[error] 	at scala.swing.Component$mouse$$anon$3$$anon$6.mouseReleased(Component.scala:136)
[error] 	at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
[error] 	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6589)
[error] 	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
[error] 	at java.desktop/java.awt.Component.processEvent(Component.java:6354)
[error] 	at java.desktop/java.awt.Container.processEvent(Container.java:2261)
[error] 	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4966)
[error] 	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2319)
[error] 	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4798)
[error] 	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4914)
[error] 	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4543)
[error] 	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4484)
[error] 	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2305)
[error] 	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772)
[error] 	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4798)
[error] 	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
[error] 	at java.desktop/java.awt.EventQueue.access$600(EventQueue.java:97)
[error] 	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
[error] 	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
[error] 	at java.base/java.security.AccessController.doPrivileged(Native Method)
[error] 	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
[error] 	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
[error] 	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
[error] 	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
[error] 	at java.base/java.security.AccessController.doPrivileged(Native Method)
[error] 	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
[error] 	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
[error] 	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
[error] 	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
[error] 	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
[error] 	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
[error] 	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
[error] 	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant