1.1 --- a/minesweeper/src/main/java/org/apidesign/demo/minesweeper/IBrwsrPrsntr.java Thu Mar 27 08:58:12 2014 +0100
1.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
1.3 @@ -1,59 +0,0 @@
1.4 -package org.apidesign.demo.minesweeper;
1.5 -
1.6 -import java.io.IOException;
1.7 -import java.net.URI;
1.8 -import java.util.logging.Logger;
1.9 -import org.apidesign.html.brwsr.XtrnlBrwsrPrsntr;
1.10 -import org.robovm.cocoatouch.foundation.NSURL;
1.11 -import org.robovm.cocoatouch.uikit.UIWebView;
1.12 -import org.robovm.objc.ObjCBlock;
1.13 -import org.robovm.objc.block.VoidBlock;
1.14 -import org.robovm.rt.bro.Bro;
1.15 -import org.robovm.rt.bro.NativeObject;
1.16 -import org.robovm.rt.bro.annotation.Bridge;
1.17 -import org.robovm.rt.bro.annotation.Library;
1.18 -
1.19 -/**
1.20 - *
1.21 - * @author jtulach
1.22 - */
1.23 -@Library("dispatch")
1.24 -final class IBrwsrPrsntr extends XtrnlBrwsrPrsntr {
1.25 - private final UIWebView wv;
1.26 -
1.27 - static {
1.28 - Bro.bind();
1.29 - }
1.30 -
1.31 - public static class Queue extends NativeObject {
1.32 - }
1.33 -
1.34 - @Bridge(symbol = "dispatch_get_current_queue")
1.35 - public static native Queue getMainQueue();
1.36 -
1.37 - @Bridge(symbol = "dispatch_async")
1.38 - public static native void async(Queue queue, ObjCBlock block);
1.39 -
1.40 - public IBrwsrPrsntr(UIWebView wv) throws Exception {
1.41 - this.wv = wv;
1.42 - }
1.43 -
1.44 - @Override
1.45 - public void runSafe(final Runnable r) {
1.46 - VoidBlock vb = new VoidBlock() {
1.47 - @Override
1.48 - public void invoke() {
1.49 - r.run();
1.50 - }
1.51 - };
1.52 - ObjCBlock ocb = VoidBlock.Marshaler.toObjCBlock(vb);
1.53 - async(getMainQueue(), ocb);
1.54 - }
1.55 -
1.56 - @Override
1.57 - protected void showBrwsr(URI page) throws IOException {
1.58 - wv.loadRequest(Foo.requestWithURL(new NSURL(page.toString())));
1.59 - }
1.60 - private static final Logger LOG = Logger.getLogger(IBrwsrPrsntr.class.getName());
1.61 -
1.62 -}