> So I guess this is also the reason for why e.g. Int32Array returns double instead of int? yes we just have the information that it's a number, so we convert that to double. We should be able to improve the number conversion before the final release.
> Right now, as HTMLCanvasElement.getContext(String contextId) returns a NativeObject I have to do things like this when getting the context: This is an isue we are aware of. In the next release, Object will be used instead of NativeObject. On Mon, Jul 4, 2016 at 3:24 PM Kalle Persson <[email protected]> wrote: > So I guess this is also the reason for why e.g. Int32Array returns double > instead of int? > > Also, would it be possible / make sense to make CanvasRenderingContext2D > and WebGLRenderingContext extend NativeObject? > Right now, as HTMLCanvasElement.getContext(String contextId) returns a > NativeObject I have to do things like this when getting the context: > > context_ = (CanvasRenderingContext2D) (Object) canvas.getContext("2d") > > It works but it feels wrong. Or am I just missing something obvious? > > On Monday, July 4, 2016 at 9:46:44 AM UTC+2, Goktug Gokdogan wrote: > >> Elemental2 currently purely driven by the JavaScript extern files. So it >> is not trivial. Maybe a later version could include some kind of type >> extension. >> For now perhaps we can improve the generated code to use generics so you >> don't need to cast but we cannot modify the API. >> > On Sat, Jul 2, 2016 at 2:07 PM, Manuel Carrasco Moñino <[email protected]> >> wrote: >> > I'm wondering if it would be possible to have type-safe convenience >>> methods for creating elements, so as the user does not have to provide the >>> string tag name, nor cast the object, maybe something like : >>> >>> HTMLButtonElement button = HTMLButtonElement.createElement(); >>> >>> instead of >>> >>> HTMLButtonElement button = (HTMLButtonElement) >>> document.createElement("button"); >>> >>> >>> >>> El sáb., 2 jul. 2016 a las 4:38, 'Goktug Gokdogan' via GWT Contributors >>> (<[email protected]>) escribió: >>> >> Closure extern definition uses a union type here: >>>> >>>> https://github.com/google/closure-compiler/blob/master/externs/browser/w3c_event.js#L34 >>>> >>>> So it accepts either EventListener interface or a function. >>>> >>>> When we see a union type, we generate overloads for each type so >>>> Elemental should provide overloads that includes both. And it seems like it >>>> does. If not please let us know. >>>> >>> >>>> On Fri, Jul 1, 2016 at 3:39 AM, Jens <[email protected]> wrote: >>>> >>>>> >>>>> Thanks, now makes sense. I get confused with the JsFunction >>>>>> JsType(native) because elemental2 has some callbacks as JsFunction and >>>>>> others as JsType(native), now an actual elemental2 question; what >>>>>> criteria >>>>>> is used to apply JsFunction (ex. >>>>>> elemental2.Node.AddEventListenerCallback) >>>>>> instead of JsType (ex. elemental2.JsType)? >>>>>> >>>>> >>>>> I think its the result of definition of EventTarget.addEventListener(): >>>>> >>>>> *listener - The object that receives a notification (an object that >>>>> implements the Event >>>>> <https://developer.mozilla.org/en-US/docs/Web/API/Event> interface) when >>>>> an >>>>> event of the specified type occurs. This must be an object implementing >>>>> the >>>>> EventListener >>>>> <https://developer.mozilla.org/en-US/docs/Web/API/EventListener> >>>>> interface, >>>>> or simply a JavaScript function >>>>> <https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Functions>.* >>>>> >>>>> The EventListener interface is a defined API and thus a >>>>> @JsType(isNative = true) interface has been generated. But to conform to >>>>> "or simply a JavaScript function" there is also an >>>>> AddEventListenerCallback >>>>> that is a @JsFunction. Not sure if this distinction has any real value, in >>>>> a hand coded elemental2 I would have only created a @JsFunction >>>>> interface EventListener >>>>> >>>>> -- J. >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "GWT Contributors" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to >>>>> [email protected]. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/google-web-toolkit-contributors/73b36bdb-c496-4768-a221-21fe8b5a437c%40googlegroups.com >>>>> <https://groups.google.com/d/msgid/google-web-toolkit-contributors/73b36bdb-c496-4768-a221-21fe8b5a437c%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>>> For more options, visit https://groups.google.com/d/optout. >>>>> >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "GWT Contributors" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to >>>> [email protected]. >>>> >>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAN%3DyUA0ZfCbS%2Bnwtre0QuAnhDdLYz%2B3LuzXqD3WqoWqK%3DFe%2BEg%40mail.gmail.com >>>> <https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAN%3DyUA0ZfCbS%2Bnwtre0QuAnhDdLYz%2B3LuzXqD3WqoWqK%3DFe%2BEg%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>> . >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "GWT Contributors" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected] >>> . >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAM28XAsU1UZgkh3cjG1HPkpRBJfaiEh631fq9WdS_RQg8Z_Leg%40mail.gmail.com >>> <https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAM28XAsU1UZgkh3cjG1HPkpRBJfaiEh631fq9WdS_RQg8Z_Leg%40mail.gmail.com?utm_medium=email&utm_source=footer> >>> . >>> >>> For more options, visit https://groups.google.com/d/optout. >>> >> -- > You received this message because you are subscribed to the Google Groups > "GWT Contributors" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/google-web-toolkit-contributors/023e92c6-8f9f-41b4-8203-369b82499d7f%40googlegroups.com > <https://groups.google.com/d/msgid/google-web-toolkit-contributors/023e92c6-8f9f-41b4-8203-369b82499d7f%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "GWT Contributors" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CABb_3%3D7G_44jYCx9krzz5cV%3DMK_GdDB%3DZFH4op67Q%3DEPNyU56g%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
