diff --git a/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java b/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java index cc162fae498..0c254d62dc1 100644 --- a/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java +++ b/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java @@ -1476,7 +1476,6 @@ public class FSkin { addEncodingSymbol("TK", FSkinProp.IMG_TICKET); addEncodingSymbol("EXPERIENCE", FSkinProp.IMG_EXPERIENCE); addEncodingSymbol("A-", FSkinProp.IMG_ALCHEMY); - addEncodingSymbol("M", FSkinProp.ICO_MANASHARD); // Set look and feel after skin loaded FView.SINGLETON_INSTANCE.setSplashProgessBarMessage("Setting look and feel..."); diff --git a/forge-gui-mobile/src/forge/Forge.java b/forge-gui-mobile/src/forge/Forge.java index 9bd352d33db..676d87aa62d 100644 --- a/forge-gui-mobile/src/forge/Forge.java +++ b/forge-gui-mobile/src/forge/Forge.java @@ -997,13 +997,14 @@ public class Forge implements ApplicationListener { currentScreen = null; } FOverlay.hideAll(); - assets.dispose(); Dscreens.clear(); graphics.dispose(); SoundSystem.instance.dispose(); try { ExceptionHandler.unregisterErrorHandling(); lastPreview.dispose(); + assets.dispose(); + AdventureScreen.dispose(); } catch (Exception e) { } } diff --git a/forge-gui-mobile/src/forge/animation/GifAnimation.java b/forge-gui-mobile/src/forge/animation/GifAnimation.java index 744b092b908..398bd416e24 100644 --- a/forge-gui-mobile/src/forge/animation/GifAnimation.java +++ b/forge-gui-mobile/src/forge/animation/GifAnimation.java @@ -42,4 +42,14 @@ public class GifAnimation extends ForgeAnimation { @Override protected void onEnd(boolean endingAll) { } + + public void dispose() { + if (animation != null) { + for (TextureRegion tr: animation.getKeyFrames()) { + try { + tr.getTexture().dispose(); + } catch (Exception e) {} + } + } + } } diff --git a/forge-gui-mobile/src/forge/animation/GifDecoder.java b/forge-gui-mobile/src/forge/animation/GifDecoder.java index 506bda6bf6f..3ca93438e81 100644 --- a/forge-gui-mobile/src/forge/animation/GifDecoder.java +++ b/forge-gui-mobile/src/forge/animation/GifDecoder.java @@ -712,6 +712,7 @@ public class GifDecoder { } Texture texture = new Texture(target); + target.dispose(); Array texReg = new Array<>(); for(h = 0; h < hzones; h++) { diff --git a/forge-gui-mobile/src/forge/screens/home/AdventureScreen.java b/forge-gui-mobile/src/forge/screens/home/AdventureScreen.java index bbd6fbaf812..826d434b82c 100644 --- a/forge-gui-mobile/src/forge/screens/home/AdventureScreen.java +++ b/forge-gui-mobile/src/forge/screens/home/AdventureScreen.java @@ -64,4 +64,10 @@ public class AdventureScreen extends LaunchScreen { if (Gdx.files.absolute(demo).exists()) animation = new GifAnimation(demo, Animation.PlayMode.LOOP); } + public static void dispose() { + if (animation != null) { + animation.dispose(); + } + animation = null; + } }