mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-07-04 15:27:19 +07:00
Attempt 2
This commit is contained in:
@ -39,7 +39,8 @@ public class IOSLauncher extends IOSApplication.Delegate{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showFileChooser(boolean open, String extension, Cons<FileHandle> cons){
|
public void showFileChooser(boolean open, String extension, Cons<FileHandle> cons){
|
||||||
UIDocumentBrowserViewController cont = new UIDocumentBrowserViewController((NSArray)null);
|
UIDocumentBrowserViewController cont = new UIDocumentBrowserViewController((NSArray<NSString>)null);
|
||||||
|
|
||||||
|
|
||||||
NSArray<UIBarButtonItem> arr = new NSArray<>(new UIBarButtonItem(Core.bundle.get("cancel"), UIBarButtonItemStyle.Plain,
|
NSArray<UIBarButtonItem> arr = new NSArray<>(new UIBarButtonItem(Core.bundle.get("cancel"), UIBarButtonItemStyle.Plain,
|
||||||
uiBarButtonItem -> cont.dismissViewController(true, () -> {})));
|
uiBarButtonItem -> cont.dismissViewController(true, () -> {})));
|
||||||
@ -63,30 +64,33 @@ public class IOSLauncher extends IOSApplication.Delegate{
|
|||||||
coord.coordinateReadingItem(documentURLs.get(0), NSFileCoordinatorReadingOptions.None, url -> {
|
coord.coordinateReadingItem(documentURLs.get(0), NSFileCoordinatorReadingOptions.None, url -> {
|
||||||
NSInputStream stream = new NSInputStream(NSData.read(url));
|
NSInputStream stream = new NSInputStream(NSData.read(url));
|
||||||
|
|
||||||
cons.get(new FileHandle(url.getPath()){
|
|
||||||
@Override
|
|
||||||
public InputStream read(){
|
|
||||||
return new InputStream(){
|
|
||||||
byte[] tmp = {0};
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int read() throws IOException{
|
|
||||||
read(tmp);
|
|
||||||
return tmp[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
try{
|
||||||
public int read(byte[] bytes, int offset, int length){
|
cons.get(new FileHandle(url.getAbsoluteURL().getPath()));
|
||||||
return (int)stream.read(bytes, offset, length);
|
/*
|
||||||
}
|
cons.get(new FileHandle(url.getPath()){
|
||||||
|
@Override
|
||||||
|
public InputStream read(){
|
||||||
|
return new InputStream(){
|
||||||
|
byte[] tmp = {0};
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void close() throws IOException{
|
public int read() throws IOException{
|
||||||
stream.close();
|
read(tmp);
|
||||||
}
|
return tmp[0];
|
||||||
};
|
}
|
||||||
}
|
|
||||||
});
|
@Override
|
||||||
|
public int read(byte[] bytes, int offset, int length){
|
||||||
|
return (int)stream.read(bytes, offset, length);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
});*/
|
||||||
|
}catch(Throwable t){
|
||||||
|
ui.showException(t);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}catch(Throwable t){
|
}catch(Throwable t){
|
||||||
ui.showException(t);
|
ui.showException(t);
|
||||||
@ -138,24 +142,22 @@ public class IOSLauncher extends IOSApplication.Delegate{
|
|||||||
|
|
||||||
cont.setDelegate(new ChooserDelegate());
|
cont.setDelegate(new ChooserDelegate());
|
||||||
|
|
||||||
// DispatchQueue.getMainQueue().sync(() -> {
|
|
||||||
UIApplication.getSharedApplication().getKeyWindow().getRootViewController().presentViewController(cont, true, () -> {});
|
UIApplication.getSharedApplication().getKeyWindow().getRootViewController().presentViewController(cont, true, () -> {});
|
||||||
// });
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void shareFile(FileHandle file){
|
public void shareFile(FileHandle file){
|
||||||
Log.info("Attempting to share file " + file);
|
try{
|
||||||
FileHandle to = Core.files.absolute(getDocumentsDirectory()).child(file.name());
|
Log.info("Attempting to share file " + file);
|
||||||
file.copyTo(to);
|
FileHandle to = Core.files.absolute(getDocumentsDirectory()).child(file.name());
|
||||||
|
file.copyTo(to);
|
||||||
|
|
||||||
NSURL url = new NSURL(to.file());
|
NSURL url = new NSURL(to.file());
|
||||||
UIActivityViewController p = new UIActivityViewController(Collections.singletonList(url), null);
|
UIActivityViewController p = new UIActivityViewController(Collections.singletonList(url), null);
|
||||||
|
UIApplication.getSharedApplication().getKeyWindow().getRootViewController().presentViewController(p, true, () -> Log.info("Success! Presented {0}", to));
|
||||||
//DispatchQueue.getMainQueue().sync(() -> {
|
}catch(Throwable t){
|
||||||
UIApplication.getSharedApplication().getKeyWindow().getRootViewController()
|
ui.showException(t);
|
||||||
.presentViewController(p, true, () -> Log.info("Success! Presented {0}", to));
|
}
|
||||||
//});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Reference in New Issue
Block a user