diff --git a/forge-gui/src/main/java/forge/gui/match/controllers/CHand.java b/forge-gui/src/main/java/forge/gui/match/controllers/CHand.java index d067f75b97f..f02a5cad840 100644 --- a/forge-gui/src/main/java/forge/gui/match/controllers/CHand.java +++ b/forge-gui/src/main/java/forge/gui/match/controllers/CHand.java @@ -142,8 +142,8 @@ public class CHand implements ICDoc { endX = toPos.x; endY = toPos.y; - final CardPanel animationPanel = new CardPanel(placeholder.getGameCard()); if (Singletons.getView().getFrame().isShowing()) { + final CardPanel animationPanel = new CardPanel(placeholder.getGameCard()); Animation.moveCard(startX, startY, startWidth, endX, endY, endWidth, animationPanel, placeholder, layeredPane, 500); } diff --git a/forge-gui/src/main/java/forge/view/arcane/CardPanel.java b/forge-gui/src/main/java/forge/view/arcane/CardPanel.java index 8f5c59f57eb..eeb15367ba1 100644 --- a/forge-gui/src/main/java/forge/view/arcane/CardPanel.java +++ b/forge-gui/src/main/java/forge/view/arcane/CardPanel.java @@ -225,7 +225,6 @@ public class CardPanel extends JPanel implements CardContainer, IDisposable { } } - /** *

* Setter for the field displayEnabled. diff --git a/forge-gui/src/main/java/forge/view/arcane/util/Animation.java b/forge-gui/src/main/java/forge/view/arcane/util/Animation.java index 75a28688315..029b2355ac9 100644 --- a/forge-gui/src/main/java/forge/view/arcane/util/Animation.java +++ b/forge-gui/src/main/java/forge/view/arcane/util/Animation.java @@ -27,6 +27,7 @@ import java.util.TimerTask; import javax.swing.JLayeredPane; import javax.swing.SwingUtilities; +import forge.gui.toolbox.FSkin; import forge.view.arcane.CardPanel; @@ -392,6 +393,9 @@ public abstract class Animation { animationPanel.setVisible(false); animationPanel.repaint(); layeredPane.remove(animationPanel); + if (animationPanel != CardPanel.getDragAnimationPanel()) { + FSkin.dispose(animationPanel); + } } }); }