diff options
-rw-r--r-- | client/src/com/vaadin/client/LayoutManager.java | 17 | ||||
-rw-r--r-- | client/src/com/vaadin/client/ui/layout/LayoutDependencyTree.java | 9 |
2 files changed, 19 insertions, 7 deletions
diff --git a/client/src/com/vaadin/client/LayoutManager.java b/client/src/com/vaadin/client/LayoutManager.java index dfcf2cb5bb..828f0942b7 100644 --- a/client/src/com/vaadin/client/LayoutManager.java +++ b/client/src/com/vaadin/client/LayoutManager.java @@ -310,8 +310,11 @@ public class LayoutManager { dump = needsMeasure.dump(); dumpLength = dump.length(); for (int i = 0; i < dumpLength; i++) { - String layoutId = dump.get(i); - currentDependencyTree.setNeedsMeasure(layoutId, true); + ServerConnector connector = connectorMap.getConnector(dump.get(i)); + if (connector != null) { + currentDependencyTree.setNeedsMeasure( + (ComponentConnector) connector, true); + } } needsMeasure = FastStringSet.create(); @@ -661,7 +664,7 @@ public class LayoutManager { parentElement.getStyle().setProperty("overflow", originalOverflows.get(parentElement)); - layoutDependencyTree.setNeedsMeasure(connectorId, true); + layoutDependencyTree.setNeedsMeasure(componentConnector, true); } Profiler.leave("Overflow fix restore"); @@ -695,8 +698,7 @@ public class LayoutManager { measureConnector(connectors.get(i)); } for (int i = 0; i < connectorCount; i++) { - layoutDependencyTree.setNeedsMeasure(connectors.get(i) - .getConnectorId(), false); + layoutDependencyTree.setNeedsMeasure(connectors.get(i), false); } measureCount += connectorCount; @@ -715,8 +717,9 @@ public class LayoutManager { measureCount++; } for (int i = 0; i < length; i++) { - String connectorId = measureTargets.get(i); - layoutDependencyTree.setNeedsMeasure(connectorId, false); + ComponentConnector connector = (ComponentConnector) connectorMap + .getConnector(measureTargets.get(i)); + layoutDependencyTree.setNeedsMeasure(connector, false); } } Profiler.leave("Layout measure from tree"); diff --git a/client/src/com/vaadin/client/ui/layout/LayoutDependencyTree.java b/client/src/com/vaadin/client/ui/layout/LayoutDependencyTree.java index af261c0208..07bb6688e3 100644 --- a/client/src/com/vaadin/client/ui/layout/LayoutDependencyTree.java +++ b/client/src/com/vaadin/client/ui/layout/LayoutDependencyTree.java @@ -429,6 +429,15 @@ public class LayoutDependencyTree { setNeedsVerticalMeasure(connector, needsMeasure); } + /** + * @param connectorId + * @param needsMeasure + * + * @deprecated As of 7.4.2, use + * {@link #setNeedsMeasure(ComponentConnector, boolean)} for + * improved performance. + */ + @Deprecated public void setNeedsMeasure(String connectorId, boolean needsMeasure) { ComponentConnector connector = (ComponentConnector) ConnectorMap.get( connection).getConnector(connectorId); |