diff --git a/core/src/io/anuke/mindustry/mapeditor/MapEditorDialog.java b/core/src/io/anuke/mindustry/mapeditor/MapEditorDialog.java index e52ae3dd07..e55e0bc7e6 100644 --- a/core/src/io/anuke/mindustry/mapeditor/MapEditorDialog.java +++ b/core/src/io/anuke/mindustry/mapeditor/MapEditorDialog.java @@ -234,9 +234,9 @@ public class MapEditorDialog extends Dialog{ new imagebutton("icon-save-image", isize, () -> { //iOS doesn't really support saving raw files. Sharing is used instead. if(!ios){ - saveFile.show() + saveFile.show(); }else { - Platforms.instance.shareImage(editor.pixmap()); + Platform.instance.shareImage(editor.pixmap()); } }).text("$text.editor.saveimage"); diff --git a/ios/src/io/anuke/mindustry/IOSLauncher.java b/ios/src/io/anuke/mindustry/IOSLauncher.java index c9232e8b90..2a45c3f964 100644 --- a/ios/src/io/anuke/mindustry/IOSLauncher.java +++ b/ios/src/io/anuke/mindustry/IOSLauncher.java @@ -3,7 +3,10 @@ package io.anuke.mindustry; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.backends.iosrobovm.IOSApplication; import com.badlogic.gdx.backends.iosrobovm.IOSApplicationConfiguration; +import com.badlogic.gdx.files.FileHandle; import com.badlogic.gdx.graphics.Pixmap; +import com.badlogic.gdx.graphics.PixmapIO; +import com.esotericsoftware.minlog.Log; import io.anuke.kryonet.DefaultThreadImpl; import io.anuke.kryonet.KryoClient; import io.anuke.kryonet.KryoServer; @@ -15,6 +18,7 @@ import io.anuke.ucore.scene.ui.TextField; import io.anuke.ucore.scene.ui.layout.Unit; import org.robovm.apple.foundation.NSAutoreleasePool; import org.robovm.apple.foundation.NSURL; +import org.robovm.apple.uikit.UIActivityViewController; import org.robovm.apple.uikit.UIApplication; import org.robovm.apple.uikit.UIApplicationLaunchOptions; import org.robovm.apple.uikit.UIApplicationOpenURLOptions; @@ -22,6 +26,7 @@ import org.robovm.apple.uikit.UIApplicationOpenURLOptions; import java.text.DateFormat; import java.text.NumberFormat; import java.text.SimpleDateFormat; +import java.util.Collections; import java.util.Date; import java.util.Locale; @@ -70,8 +75,13 @@ public class IOSLauncher extends IOSApplication.Delegate { @Override public void shareImage(Pixmap image){ - //todo share it + FileHandle file = Gdx.files.local("tmp-img.pmh"); + NSURL url = new NSURL(file.file()); + PixmapIO.writePNG(file, image); + UIActivityViewController p = new UIActivityViewController(Collections.singletonList(url), null); + UIApplication.getSharedApplication().getKeyWindow().getRootViewController() + .presentViewController(p, true, () -> Log.info("Success! Presented someting.")); } };