That worked! I thought I had tried that. I don't usually use "this." when
adding event listeners in ActionScript. I guess I was thinking too much
about how it would be converted to JavaScript or something. I must have
thought it would help the compiler. Haha!

- Josh

On Tue, Jul 14, 2015 at 4:11 PM, Alex Harui <aha...@adobe.com> wrote:

> Bummer.
>
> Did you try:
>
>   this.addEventListener("mousedown", simpleButton_mousedownHandler);
>
> The “this.” might be creating a pattern that isn’t handled.  I’m sort of
> hoping Mike will finish his mother-in-law’s bathroom and find time to
> start in on some way to pass context so we don’t have to one-off these
> patterns.
>
> -Alex
>
> On 7/14/15, 3:50 PM, "Josh Tynjala" <joshtynj...@gmail.com> wrote:
>
> >Alex,
> >
> >The change you made worked for the case where the function is assigned to
> >a
> >variable, but it doesn't account for the function being passed as an
> >argument to a function.
> >
> >This still doesn't work for me:
> >
> >this.addEventListener("mousedown", this.simpleButton_mousedownHandler);
> >
> >However, as a workaround, I can do this, for now:
> >
> >var mouseDownListener:Function = this.simpleButton_mousedownHandler;
> >this.addEventListener("mousedown", mouseDownListener);
> >
> >- Josh
> >
> >On Sun, Jun 28, 2015 at 10:13 PM, Alex Harui <aha...@adobe.com> wrote:
> >
> >>
> >>
> >> On 6/28/15, 2:21 PM, "Michael Schmalle" <teotigraphix...@gmail.com>
> >>wrote:
> >>
> >> >On Sun, Jun 28, 2015 at 5:17 PM, Josh Tynjala <joshtynj...@gmail.com>
> >> >wrote:
> >> >
> >> >> Yes, that is correct.
> >> >>
> >> >> In case it wasn't obvious, event listeners are the typical use case
> >> >>where
> >> >> you'd pass a reference to a member function somewhere else where a
> >> >> reference needs to be saved in a variable. AS3 made this easy by
> >> >> automatically binding member functions. JavaScript usually requires
> >>some
> >> >> manual intervention to get event listeners to be called with the
> >>right
> >> >> scope.
> >> >>
> >> >
> >> >Yeah the compiler does this already for anonymous functions, it
> >>creates a
> >> >self var pointing to 'this' and then uses self in the anonymous
> >>function's
> >> >body.
> >>
> >> Actually, that ‘self’ stuff is for AS lexical scoping.  Josh is more
> >> interested in the use of goog.bind for function identifiers.  FalconJX
> >> handles that correctly in most cases for addEventListener and other
> >> callbacks, but I guess we don’t handle this scenario.
> >>
> >> I can try to take a look at it, but if you want to, search for
> >>GOOG_BIND.
> >>
> >> >
> >> >I wasn't aware of this problem though, can you create a JIRA ticket? I
> >> >probably will be the one that tackles it since I am sure Alex doesn't
> >>have
> >> >time to do something like this and test it as well.
> >>
> >> Well, I can probably get it working, but I’m sure I won’t test it as
> >>well
> >> as you will.
> >>
> >> -Alex
> >>
> >>
>
>

Reply via email to