A huge number of GWT permutations when using GXT

I have an insane amount of permutations by compiling the project. if I set the parameter:

<set-property name="user.agent" value="gecko1_8" />

i get: compilation of 1008 lookups

if I asked:

<set-property name="locale" value="de"/>
<set-property name="user.agent" value="gecko1_8" />

i: compiling 36 lookups

here is the full .gwt.xml

<!-- Inherit the core Web Toolkit stuff. -->
<inherits name='com.google.gwt.user.User' />

<!-- We need the JUnit module in the main module, -->
<!-- otherwise eclipse complains (Google plugin bug?) -->
<inherits name='com.google.gwt.junit.JUnit' />

   <!-- GXT Theme -->
<inherits name='com.sencha.gxt.theme.gray.Gray' />

<!-- caneldar -->
<inherits name='com.bradrydzewski.gwt.calendar.Calendar' />
<inherits name='com.bradrydzewski.gwt.calendar.theme.google.Google' />
<inherits name='com.allen_sauer.gwt.dnd.gwt-dnd' />

<!-- Other module inherits -->
<inherits name="com.google.gwt.json.JSON" />
<inherits name='com.google.gwt.visualization.Visualization' />
<inherits name='com.chap.links.Timeline' />

<!-- Locale -->
<inherits name="com.google.gwt.i18n.I18N"/>
<set-property name="locale" value="de"/>
<set-property name="user.agent" value="gecko1_8" />

What can cause a large number of permutations?

+4
source share
1 answer

It looks like you are using GXT (from the Grayinherits statement), but you are not actually inheriting GXT(step three in the setup.txt file). This is not necessarily bad, but avoiding this statement means that you are missing out on some tweaking that limits the possible number of permutations. Add this right in front of your line Gray:

<inherits name='com.sencha.gxt.ui.GXT'/>

user.agent= gecko1_8 ( ), GXT ( ):

<set-property name="gxt.user.agent" value="gecko1_9" />

(, Gecko 1.9 1.8, 1.8 , , 1.9.)


GXT user.agent?

, user.agent - fallback CssResource. , GXT ie10 ( 3.0) ie7 ( , ie6) Chrome vs Safari ( ?), .

, GXT "os", . "mac", "linux" "windows" ( "" 3.0.3 Solaris, Chrome OS ..). , , OS X, , , , linux firefox Mac.

user.agent, gxt.user.agent?

GXT , GWT, GWT GXT :

<!-- From /com/sencha/gxt/core/Core.gwt.xml about line 110 -->
<!-- Restrict the permutation explosion -->
<set-property name="user.agent" value="ie6">
  <any>
    <when-property-is name="gxt.user.agent" value="ie6" />
    <when-property-is name="gxt.user.agent" value="ie7" />
  </any>
</set-property>
<set-property name="user.agent" value="ie8">
  <when-property-is name="gxt.user.agent" value="ie8" />
</set-property>
<set-property name="user.agent" value="ie9">
  <any>
    <when-property-is name="gxt.user.agent" value="ie9" />
    <when-property-is name="gxt.user.agent" value="ie10" />
  </any>
</set-property>
<set-property name="user.agent" value="gecko1_8">
  <any>
    <when-property-is name="gxt.user.agent" value="gecko1_8" />
    <when-property-is name="gxt.user.agent" value="gecko1_9" />
  </any>
</set-property>
<set-property name="user.agent" value="safari">
  <any>
    <when-property-is name="gxt.user.agent" value="safari3" />
    <when-property-is name="gxt.user.agent" value="safari4" />
    <when-property-is name="gxt.user.agent" value="safari5" />
    <when-property-is name="gxt.user.agent" value="air" />
    <when-property-is name="gxt.user.agent" value="chrome" />
  </any>
</set-property>
<set-property name="user.agent" value="opera">
  <when-property-is name="gxt.user.agent" value="opera" />
</set-property>

GXT.gwt.xml ?

, 39 , - . GXT.gwt.xml 6 :

<collapse-property name="user.agent.os" values="*" />
<collapse-property name="gxt.user.agent" values="air, safari*, chrome" />
<collapse-property name="gxt.user.agent" values="ie6, ie7" />
<collapse-property name="gxt.user.agent" values="ie9, ie10" />
<collapse-property name="gxt.user.agent" values="gecko*" />

GXT, . , GXT. <collapse-property> <collapse-all-properties /> http://code.google.com/p/google-web-toolkit/wiki/SoftPermutations

+12

All Articles