Reviewers: Ray Ryan, jgw,
Message:
Comments on the utility of this feature requested.
Description:
This patch adds a new CssResource type that externalizes the processed
CSS instead of adding it to the compiled JavaScript. It allows the
developer to trade additional round-trips and certain CssResource
features for reduced JS size or parse time.
If a regular, inline, CssResource uses only static features, a simpler
code-generation path will be used, although this should have no
user-visible effects.
Features missing from ExternalCssResource:
- @sprite
- @if (Java expression), however the deferred-binding property version
still works
- The value() function
This has been sitting in a git branch of mine since before the 2.0
release cycle started. I'm not entirely sure that externalizing CSS has
actual value unless you're in a runtime environment that has very slow
JS evaluation.
Please review this at http://gwt-code-reviews.appspot.com/141809
Affected files:
A user/src/com/google/gwt/resources/client/ExternalCssResource.java
A
user/src/com/google/gwt/resources/client/impl/ExternalCssResourcePrototype.java
A user/src/com/google/gwt/resources/css/CheckStaticCssVisitor.java
M user/src/com/google/gwt/resources/css/CssGenerationVisitor.java
M user/src/com/google/gwt/resources/css/ast/CollapsedNode.java
M user/src/com/google/gwt/resources/css/ast/CssDef.java
M user/src/com/google/gwt/resources/css/ast/CssEval.java
M user/src/com/google/gwt/resources/css/ast/CssExternalSelectors.java
M user/src/com/google/gwt/resources/css/ast/CssIf.java
M user/src/com/google/gwt/resources/css/ast/CssMediaRule.java
M user/src/com/google/gwt/resources/css/ast/CssNoFlip.java
M user/src/com/google/gwt/resources/css/ast/CssNode.java
M user/src/com/google/gwt/resources/css/ast/CssPageRule.java
M user/src/com/google/gwt/resources/css/ast/CssProperty.java
M user/src/com/google/gwt/resources/css/ast/CssRule.java
M user/src/com/google/gwt/resources/css/ast/CssSelector.java
M user/src/com/google/gwt/resources/css/ast/CssSprite.java
M user/src/com/google/gwt/resources/css/ast/CssStylesheet.java
A user/src/com/google/gwt/resources/css/ast/CssSubstitution.java
M user/src/com/google/gwt/resources/css/ast/CssUnknownAtRule.java
M user/src/com/google/gwt/resources/css/ast/CssUrl.java
M user/src/com/google/gwt/resources/rg/CssResourceGenerator.java
M user/test/com/google/gwt/resources/client/CSSResourceTest.java
A user/test/com/google/gwt/resources/client/external.css
--
http://groups.google.com/group/Google-Web-Toolkit-Contributors