mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-02-02 20:33:50 +07:00
Present the file sharing on iPad in a popover - and prevent the crash. (#1145)
* Present the file sharing on iPad in a popover - and prevent the crash. * Update gradle.properties
This commit is contained in:
parent
ae981053b2
commit
1db444b070
@ -12,6 +12,7 @@ import io.anuke.mindustry.game.Saves.*;
|
||||
import io.anuke.mindustry.io.*;
|
||||
import io.anuke.mindustry.mod.*;
|
||||
import io.anuke.mindustry.ui.*;
|
||||
import org.robovm.apple.coregraphics.*;
|
||||
import org.robovm.apple.foundation.*;
|
||||
import org.robovm.apple.uikit.*;
|
||||
import org.robovm.objc.block.*;
|
||||
@ -124,7 +125,17 @@ public class IOSLauncher extends IOSApplication.Delegate{
|
||||
|
||||
NSURL url = new NSURL(to.file());
|
||||
UIActivityViewController p = new UIActivityViewController(Collections.singletonList(url), null);
|
||||
UIApplication.getSharedApplication().getKeyWindow().getRootViewController().presentViewController(p, true, () -> Log.info("Success! Presented {0}", to));
|
||||
UIViewController rootVc = UIApplication.getSharedApplication().getKeyWindow().getRootViewController();
|
||||
if(UIDevice.getCurrentDevice().getUserInterfaceIdiom() == UIUserInterfaceIdiom.Pad){
|
||||
// Set up the pop-over for iPad
|
||||
UIPopoverPresentationController pop = p.getPopoverPresentationController();
|
||||
UIView mainView = rootVc.getView();
|
||||
pop.setSourceView(mainView);
|
||||
CGRect targetRect = new CGRect(mainView.getBounds().getMidX(), mainView.getBounds().getMidY(), 0, 0);
|
||||
pop.setSourceRect(targetRect);
|
||||
pop.setPermittedArrowDirections(UIPopoverArrowDirection.None);
|
||||
}
|
||||
rootVc.presentViewController(p, true, () -> Log.info("Success! Presented {0}", to));
|
||||
}catch(Throwable t){
|
||||
ui.showException(t);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user