[errai-dev] Mosaic migration, part 1

Mike Brock cbrock at redhat.com
Tue Jan 19 11:13:39 EST 2010


This appears to be one of the problems with Mosaic, and the key bindings issue is one of the reasons why I originally abandoned Mosaic.  Essentially, Mosaic's layout system is not compatible with GWT's FocusPanel, which means that it's extremely difficult (and impossible in some cases) to do keyboard-based UI controls.  

This is one of the reasons when I was developing WSGrid for Guvnor that I could not continue forward using Mosaic layouts.  Mosaic is more complete from a UI perspective, but it's actually very limiting from a developer perspective.  Are we willing to live with all these limitations?  

I think the loss of the ability to do keyboard interaction with complex widgets is a very bad strike against Mosaic and it makes me feel uncomfortable with it.

My second problem with Mosaic, is doing some profiling this morning is how much more heavyweight it's layout system is.  I was testing it using Google's SpeedTracer tool, and it's over 800% slower at calculating layout than the old system.  This is why there's more of a delay when you click on things in Mosaic, versus in the old Workspaces Widgets.  

So I'm not really sure what the solution to this is. 

There's are two limitations of Mosaic at this point:

- It's layouts are incompatible with GWT's native layouts, like FocusPanel, limiting keyboard bindings within Mosaic apps. (this is pretty huge to me)
- It's layout calculations are extremely slow compared to native GWT layouts.


On 2010-01-19, at 9:40 AM, Heiko Braun wrote:

> 
> 
> I finished and committed the part of the workspace migration to mosaic layout managers.
> Bare with me if you see some things looking different or not even working as they used before:
> It's still work in progress and tried my best to retain most of the features, but some things still require additional work:
> 
> - Leveraging UIBinder: I had to drop most of the UIBinder examples, because mosaic isn't there yet.
> The mosaic UI binder adoption is work in progress and as long as major bit's and pieces are missing on that 
> side, we need to postpone using it. IMO we do a 100% adoption of declarative UI, when it's available instead
> of heaving a demo that partly works with that concepts, but still has to rely on programmatic  UI assembly for most cases.
> 
> -  WSGrid: The nifty auto scroll feature has been disabled, because I couldn't make it work within the mosaic layout managers.
> It just blew up all of the time. But I think most of the other features made it into the new version. I was forced to rewrite many parts
> of the widgets and replace bit's and pieces with mosaic constructs.
> 
> - CSS: The workspace and widgets CSS files have been dropped to a large degree, because they did party overwrite GWT base 
> css properties which caused a lot of trouble in conjunction with mosaic. So bare with me, if it doesn't look exactly like it used to be.
> I did focus on functionality this time: This will be revisited on a larger scale, when we begin  work the overall look and feel
> 
> That's it for now, Stay tuned there is more to come.
> 
> Regards, Heiko
> _______________________________________________
> errai-dev mailing list
> errai-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/errai-dev




More information about the errai-dev mailing list