From 24eccbb910ebdbccba22b8dbc14faef4e5e661a4 Mon Sep 17 00:00:00 2001 From: Artur Signell Date: Thu, 24 Mar 2011 10:29:59 +0000 Subject: Potential fix for #6685 High CPU usage for any Vaadin application in IE9 - Moved v-app-loading class to separate div inside v-app svn changeset:17907/svn branch:6.5 --- src/com/vaadin/terminal/gwt/client/ui/VView.java | 7 ++++++- src/com/vaadin/terminal/gwt/server/AbstractApplicationServlet.java | 6 ++++-- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'src/com/vaadin/terminal') diff --git a/src/com/vaadin/terminal/gwt/client/ui/VView.java b/src/com/vaadin/terminal/gwt/client/ui/VView.java index 5d7cc18945..70b5388405 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VView.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VView.java @@ -675,6 +675,11 @@ public class VView extends SimplePanel implements Container, ResizeHandler, DOM.setElementProperty(getElement(), "tabIndex", "1"); RootPanel root = RootPanel.get(rootPanelId); + Element rootElement = root.getElement(); + if (rootElement.getChildCount() == 1) { + // Remove any "v-app-loading" div + rootElement.getChild(0).removeFromParent(); + } root.add(this); root.removeStyleName("v-app-loading"); @@ -708,7 +713,7 @@ public class VView extends SimplePanel implements Container, ResizeHandler, } public void focus() { - getElement().focus(); + getElement().focus(); } } diff --git a/src/com/vaadin/terminal/gwt/server/AbstractApplicationServlet.java b/src/com/vaadin/terminal/gwt/server/AbstractApplicationServlet.java index 5f06285b1f..a50cf3290a 100644 --- a/src/com/vaadin/terminal/gwt/server/AbstractApplicationServlet.java +++ b/src/com/vaadin/terminal/gwt/server/AbstractApplicationServlet.java @@ -1660,7 +1660,7 @@ public abstract class AbstractApplicationServlet extends HttpServlet implements + getDefaultTheme().replaceAll("[^a-zA-Z0-9]", ""); } - String classNames = "v-app v-app-loading " + themeClass + " " + String classNames = "v-app " + themeClass + " " + appClass; String divStyle = null; @@ -1744,7 +1744,9 @@ public abstract class AbstractApplicationServlet extends HttpServlet implements String appId, String classNames, String divStyle, HttpServletRequest request) throws IOException { page.write("
\n"); + + (divStyle != null ? divStyle : "") + ">"); + page.write("
"); + page.write("\n"); page.write(""); } -- cgit v1.2.3