JsInterop will provide some base classes for stuff that are not possible with JsInterop annotations.
On Wed, May 25, 2016 at 1:30 PM, Paul Stockley <[email protected]> wrote: > Eval is really slow. I would use JSNI. Eventually I think J2CL will have a > way to execute javascript. Just isolate the JSNI in a helper class so it > can easily be replaced. > > > On Wednesday, May 25, 2016 at 3:35:07 PM UTC-4, Hristo Stoyanov wrote: >> >> Actually, it might be possible to do it with JsInterop only: >> >> class Globals { >> >> @JsMethod(namespace=GLOBAL) >> public native Object eval(String expresion); >> >> @JsOverlay >> public native boolean isVariableDefined(String varName){ >> return Boolean.TRUE.equals(eval("!!window['"+varName+"']")); >> } >> >> } >> >> I guess, you can also use JSON.safeEval() ... but we dont know if will >> survive in J2CL. >> >> >> On Wednesday, May 25, 2016 at 12:21:26 PM UTC-7, Hristo Stoyanov wrote: >>> >>> Jens, >>> Thanks, so apparently JsInterop cannot be a complete replacement of JSNI? >>> >>> I was hoping to be able to wrap in @JsType(native = true) something like >>> Object.keys(window) >>> <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys> >>> >>> On Tuesday, May 24, 2016 at 5:11:39 PM UTC-7, Jens wrote: >>>> >>>> You still need to use JSNI for accessing these properties. Depending on >>>> the API you want to build you could define @JsOverlay methods inside >>>> @JsType(native = true) classes and let them delegate to a JSNI based >>>> utility class. >>>> >>>> -- J. >>>> >>> -- > You received this message because you are subscribed to the Google Groups > "GWT Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/google-web-toolkit. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
