<replace-with class="com.vaadin.terminal.gwt.client.VSchedulerImpl">
<when-type-is class="com.google.gwt.core.client.impl.SchedulerImpl" />
</replace-with>
+
+ <replace-with class="com.vaadin.terminal.gwt.client.VDebugConsole">
+ <when-type-is class="com.vaadin.terminal.gwt.client.Console" />
+ </replace-with>
- <!-- Use our own history impl for IE to workaround #2931. -->
- <replace-with class="com.vaadin.terminal.gwt.client.HistoryImplIEVaadin">
- <when-type-is class="com.google.gwt.user.client.impl.HistoryImpl" />
- <when-property-is name="user.agent" value="ie6" />
- </replace-with>
-
<generate-with
- class="com.vaadin.terminal.gwt.widgetsetutils.EagerWidgetMapGenerator">
+ class="com.vaadin.terminal.gwt.widgetsetutils.WidgetMapGenerator">
<when-type-is class="com.vaadin.terminal.gwt.client.WidgetMap" />
</generate-with>
return communicationFree < FREE_LIMIT;
}
}
-
+
private static DeferredWidgetLoader deferredWidgetLoader;
-
+
public void onModuleLoad() {
- // Enable IE6 Background image caching
- if (BrowserInfo.get().isIE6()) {
- enableIE6BackgroundImageCache();
- }
// Prepare VConsole for debugging
if (isDebugMode()) {
- VDebugConsole console = GWT.create(VDebugConsole.class);
+ Console console = GWT.create(Console.class);
console.setQuietMode(isQuietDebugMode());
console.init();
VConsole.setImplementation(console);
browserDetails = new VBrowserDetails(agent);
}
- request.getParameter("sh"), request.getParameter("tzo"),
+ if (request.getParameter("sw") != null) {
+ updateClientSideDetails(request.getParameter("sw"),
++ request.getParameter("sh"), request.getParameter("cw"),
++ request.getParameter("ch"), request.getParameter("tzo"),
+ request.getParameter("rtzo"), request.getParameter("dstd"),
+ request.getParameter("dston"),
+ request.getParameter("curdate"),
+ request.getParameter("td") != null);
+ }
+ }
+
+ /**
+ * Checks if the browser is so old that it simply won't work with a Vaadin
+ * application. Can be used to redirect to an alternative page, show
+ * alternative content or similar.
+ *
+ * When this method returns true chances are very high that the browser
+ * won't work and it does not make sense to direct the user to the Vaadin
+ * application.
+ *
+ * @return true if the browser won't work, false if not the browser is
+ * supported or might work
+ */
+ public boolean isTooOldToFunctionProperly() {
+ if (browserDetails == null) {
+ // Don't know, so assume it will work
+ return false;
+ }
+
+ return browserDetails.isTooOldToFunctionProperly();
}
}