summaryrefslogtreecommitdiffstats
path: root/client/src/com/vaadin/Vaadin.gwt.xml
blob: 5e8f08fe225adbe0ac8c114e4b04aa253313f262 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<module>
    <!-- This GWT module inherits all Vaadin client side functionality modules. 
        This is the module you want to inherit in your client side project to be 
        able to use com.vaadin.* classes. -->

    <!-- Hint for WidgetSetBuilder not to automatically update the file -->
    <!-- WS Compiler: manually edited -->

    <inherits name="com.google.gwt.user.User" />

    <inherits name="com.google.gwt.http.HTTP" />

    <inherits name="com.google.gwt.json.JSON" />

    <inherits name="com.google.gwt.logging.Logging" />
    <set-property name="gwt.logging.enabled" value="TRUE" />

    <inherits name="com.vaadin.VaadinBrowserSpecificOverrides" />

    <source path="client" />
    <source path="shared" />

    <!-- Use own Scheduler implementation to be able to track if commands 
        are running -->
    <replace-with class="com.vaadin.client.VSchedulerImpl">
        <when-type-is class="com.google.gwt.core.client.impl.SchedulerImpl" />
    </replace-with>

    <generate-with
        class="com.vaadin.server.widgetsetutils.AcceptCriteriaFactoryGenerator">
        <when-type-is class="com.vaadin.client.ui.dd.VAcceptCriterionFactory" />
    </generate-with>

    <generate-with
        class="com.vaadin.server.widgetsetutils.ConnectorBundleLoaderFactory">
        <when-type-assignable
            class="com.vaadin.client.metadata.ConnectorBundleLoader" />
    </generate-with>

    <replace-with
        class="com.vaadin.client.communication.AtmospherePushConnection">
        <when-type-is class="com.vaadin.client.communication.PushConnection" />
    </replace-with>

    <!-- Set vaadin.profiler to true to include profiling support in the 
        module -->
    <define-property name="vaadin.profiler" values="true,false" />
    <set-property name="vaadin.profiler" value="false" />

    <replace-with class="com.vaadin.client.Profiler.EnabledProfiler">
        <when-type-is class="com.vaadin.client.Profiler" />
        <when-property-is name="vaadin.profiler" value="true" />
    </replace-with>

    <!-- Use the new cross site linker to get a nocache.js without document.write -->
    <add-linker name="xsiframe" />

    <!-- Remove IE6/IE7 permutation as they are not supported -->
    <set-property name="user.agent" value="ie8,ie9,ie10,gecko1_8,safari" />

    <!-- Pointer event support -->
    <define-property name="modernie" values="none,yes" />
    <property-provider name="modernie"><![CDATA[
      {
        var ua = $wnd.navigator.userAgent;
        if (ua.indexOf('MSIE') == -1 && ua.indexOf('Trident') != -1) { return 'yes'; }
        return 'none';
      }
    ]]></property-provider>

    <set-property name="modernie" value="none">
        <none>
            <when-property-is name="user.agent" value="gecko1_8" />
        </none>
    </set-property>

    <!-- Fall through to this rule when the browser doesn't support pointer 
        event -->
    <replace-with class="com.vaadin.client.event.PointerEventSupportImpl">
        <when-type-is class="com.vaadin.client.event.PointerEventSupportImpl" />
    </replace-with>

    <replace-with
        class="com.vaadin.client.event.PointerEventSupportImplModernIE">
        <when-type-is class="com.vaadin.client.event.PointerEventSupportImpl" />
        <none>
            <when-property-is value="none" name="modernie" />
        </none>
    </replace-with>

    <replace-with class="com.vaadin.client.event.PointerEventSupportImplIE10">
        <when-type-is class="com.vaadin.client.event.PointerEventSupportImpl" />
        <when-property-is value="ie10" name="user.agent" />
    </replace-with>
</module>