The plan is to use modern APIs, such as the CSS transitions and animation APIs, and *only* animate properties that current GPUs can efficiently animate - specifically position, scale, rotation and opacity. Thus, they should work well on mobile as well as desktop (though low-end mobile hardware might not achieve 60fps).
The plan for fallbacks on older browsers is to not animate - toast will just appear and disappear, and so forth. A sluggish or janky animation is worse than none. The CSS APIs have been around for years, so few old devices could readily achieve 60fps with web technologies.
For coding style, I favor camelCase for variable and CSS classes. Naming things in the NounModifier style helps code completion tools. I’d like to use LESS, but couldn’t get it to work in my demos.
The Controls are intended to evoke smoothly-working machinery. animated.Toast slides like a well-engineered CD tray, with no bouncing as it stops. animated.ToastCurve is a more fanciful, like science-fiction machinery. Users aren’t supposed to pay attention to the animation - just get an impression of well-designed software.
A number of things can be done with just position, scale, rotation and opacity - one such would be a button that, when tapped, expands to fill its parent and fades into a new pane.
> --
> You received this message because you are subscribed to the Google Groups "Enyo Development" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
enyo-developme...@googlegroups.com.
> To post to this group, send email to
enyo-dev...@googlegroups.com.
> To view this discussion on the web visit
https://groups.google.com/d/msgid/enyo-development/3ff3d742-85cf-4495-a885-6bc58c55b805%40googlegroups.com.