X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Fxwt%2FXWT.java;h=19b2237a041c927d08e8906fe8e973139bf31f74;hb=5ef18e2b3993d3c515a0b51a1326b2ad11285f4a;hp=22d20a98e24e5a07ec42f78421311f19c070e3ef;hpb=8235361e8601ae7b36ab707058de3b52225d15a2;p=org.ibex.core.git diff --git a/src/org/xwt/XWT.java b/src/org/xwt/XWT.java index 22d20a9..19b2237 100644 --- a/src/org/xwt/XWT.java +++ b/src/org/xwt/XWT.java @@ -13,9 +13,9 @@ import org.bouncycastle.util.encoders.Base64; /** Singleton class that provides all functionality in the xwt.* namespace */ public final class XWT extends JS.Obj { - public Res resourceRoot = null; + public final Res rr; + public XWT(Res rr) { this.rr = rr; } - public static final XWT singleton = new XWT(); private final JS xwtMath = new XWTMath(); private final JS xwtString = new XWTString(); @@ -24,6 +24,7 @@ public final class XWT extends JS.Obj { public Object get(Object name) { if (name.equals("alt")) return Surface.alt ? Boolean.TRUE : Boolean.FALSE; + else if (name.equals("rr")) return rr; else if (name.equals("control")) return Surface.control ? Boolean.TRUE : Boolean.FALSE; else if (name.equals("shift")) return Surface.shift ? Boolean.TRUE : Boolean.FALSE; else if (name.equals("clipboard")) return Platform.getClipBoard(); @@ -52,7 +53,6 @@ public final class XWT extends JS.Obj { if (name.equals("thread") && value != null && value instanceof JS.Callable) ThreadMessage.newthread((JS.Callable)value); else if (name.equals("clipboard")) Platform.setClipBoard(value.toString()); else if (name.equals("proxyAuthorization")) { - // FIXME: undocumented, possibly insecure HTTP.Proxy.Authorization.authorization = value.toString(); HTTP.Proxy.Authorization.waitingForUser.release(); } else super.put(name, value); @@ -66,6 +66,9 @@ public final class XWT extends JS.Obj { Platform.newBrowserWindow(args.elementAt(0).toString()); return null; + } else if (method.equals("clone")) { + return new XWT((Res)args.elementAt(0)); + } else if (method.equals("yield")) { if (checkOnly) return Boolean.TRUE; sleep(0);