Man, I would have never guessed my little tissy about FalconJS and just
starting FalconJX would have got to this point that FlexJS is with all the
different outputs and things being compiled with it and how you guys are
not even writing js anymore, giving you time to do stuff like this. :)

I will note that when I wrote the Randori compiler I was still using
FalconJX right up to the end and it did the Hungry Heros and Starling cross
compile so there were a huge amount of little nit pick bugs I got out of it
then.

Right on Alex! I am so glad Adobe is still letting you work on this and
trying to get it to a point more people find it.

Mike

On Mon, Mar 28, 2016 at 5:37 PM, Alex Harui <aha...@adobe.com> wrote:

> Hi,
>
> As you may know, I've been exploring what it would take to create a set of
> components for FlexJS that more closely match the Spark (and MX) APIs from
> the regular Flex SDK.
>
> Today, I reached an early milestone:  I got a subset of UIComponent to
> subclass the FlexJS UIBase and cross-compile with zero errors.  It doesn't
> run yet, but it gives us information about the effort and patterns
> involved and some early idea of the size.
>
> In order to create a manageable subset, I commented out all code in
> UIComponent related to:
>
> -accessibility
> -rotation
> -scale
> -3D and Transforms and other AdvancedLayoutFeatures
> -designLayer
> -BlendModes and BlendShaders
> -Filters
> -doubleClick
> -cacheAsBitmap, cachePolicy and cacheHeuristic
> -AdvancedStyleClient
> -Repeater
> -XML DataBinding
>
> Most of what is in the list is stuff related to "fancy" visuals.  IMO, you
> can build many apps without these features.
>
> In addition, I changed some weak reference listeners to strong listeners
> since we don't have weak reference support on the JS side so any code that
> does a lot of discarding of UIComponents is going to leak (for now).  The
> only idea I have for dealing with lack of weak references going forward is
> to add a dispose() call to UIComponent and other objects similar to what
> you already have to do for Bitmaps and XML.
>
> It turns out that it still took some 212 files to compile UIComponent.
> That's how complex the web of interdependencies are in the Flex SDK.  But
> interestingly, the cross-compiled output minified down to "only" an
> additional 140K!  I was thinking it would be 10 times as big.
>
> So that's promising, and means I will continue pushing on getting this to
> run and port more code.  I think the next milestone is to port
> mx:Container, mx:Label, mx:Application just to see a Hello World run.
> Then start porting Spark.  How long that will take is unknown.  The key
> question is how many touch-points there are with Flash, especially APIs
> with good names that shouldn't be renamed (like 'parent').  Maybe
> UIComponent (and UITextField) are the primary points of contact with the
> Runtime and higher-level components will port more cleanly.
>
> But first, I have slides and demos and hopefully a release (without this
> stuff) to finish by next Monday.
>
> Feel free to ask questions,
> -Alex
>
>

Reply via email to