package com.itmill.toolkit.terminal.gwt.client.ui;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.Iterator;
+import java.util.Set;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.Element;
iLayout();
+ Set oldWidgets = new HashSet();
+ oldWidgets.addAll(locationToWidget.values());
+
// For all contained widgets
for (final Iterator i = uidl.getChildIterator(); i.hasNext();) {
final UIDL uidlForChild = (UIDL) i.next();
} catch (final IllegalArgumentException e) {
// If no location is found, this component is not visible
}
+ oldWidgets.remove(child);
+ }
+ }
+ for (Iterator iterator = oldWidgets.iterator(); iterator.hasNext();) {
+ Widget oldWidget = (Widget) iterator.next();
+ if (oldWidget.isAttached()) {
+ // slot of this widget is emptied, remove it
+ remove(oldWidget);
}
}