Wednesday, August 28, 2013

Xaml Loader (continued)

I am wrapping up work to entirely remove the server piece from Fayde.  Before, Fayde would parse the xaml and deliver json.  That is no longer necessary.  This should make setup easier and remove the requirement to run in IIS.  This engine will also allow users to support custom routing mechanisms.  In addition, an extensive amount of unit tests have been added to the XamlLoader in javascript.

Tuesday, August 20, 2013

Xaml Loader

Until now, we have been processing XAML on the server and delivering JSON to the client.  When we first did this, we knew it would be a quick and dirty implementation to test out the engine.  I have spent the last week building a Xaml Loader on the client.  In addition to removing much of the server pieces, I have been creating many unit tests to stabilize this new work.  Hopefully the next update will deliver news of speed improvements.

Wednesday, August 14, 2013

Binding Fixes

I recently found a small bug (code-wise) that caused a massive bug (performance-wise) on bindings.  As part of my rebuild, I failed to account for inherited data contexts properly.  This led to a near-infinite loop of setting the inherited data contexts back on itself when using 2-way bindings.  I have patched this issue.  I also went a step further and reduced the overhead of inherited data contexts.  I have added unit tests to ensure this type of thing doesn't appear in the future.

Tuesday, August 6, 2013

Theming

It has been very difficult to change out the theme for an app.  Today, I added the ability to specify Theme="" in the default.fap xaml.  I have included 2 themes in the Fayde package: Default and Metro.  You currently cannot swap out themes at runtime.  That will come in good time.

Saturday, August 3, 2013

Real world tests

Lately, I have been working on creating real world tests to help find pain points in the software.  I have been creating a timeline utility to help profile what the engine is doing over the course of loading the application, navigating to a page, and rendering everything.  I have also been slowly checking in fixes and updating the nuget package.