@@ -0,0 +1,1731 @@
+/*%0A@VaadinApache2LicenseForJavaFiles@%0A */%0Apackage com.vaadin.terminal.gwt.client.ui;%0A%0Aimport java.util.ArrayList;%0Aimport java.util.Collection;%0A%0Aimport com.google.gwt.user.client.ui.HasWidgets;%0Aimport com.google.gwt.user.client.ui.Widget;%0Aimport com.vaadin.terminal.gwt.client.VPaintableMap;%0Aimport com.vaadin.terminal.gwt.client.VPaintableWidget;%0Aimport com.vaadin.terminal.gwt.client.VPaintableWidgetContainer;%0A%0Apublic abstract class VAbstractPaintableWidgetContainer extends%0A        VAbstractPaintableWidget implements VPaintableWidgetContainer %7B%0A%0A    /**%0A     * Default constructor%0A     */%0A    public VAbstractPaintableWidgetContainer() %7B%0A    %7D%0A%0A    public Collection%3CVPaintableWidget%3E getChildren() %7B%0A        Collection%3CVPaintableWidget%3E children = new ArrayList%3CVPaintableWidget%3E();%0A%0A        addDescendantPaintables(getWidgetForPaintable(), children,%0A                VPaintableMap.get(getConnection()));%0A%0A        return children;%0A    %7D%0A%0A    private static void addDescendantPaintables(Widget widget,%0A            Collection%3CVPaintableWidget%3E paintables, VPaintableMap paintableMap) %7B%0A        // FIXME: Store hierarchy instead of doing lookup every time%0A%0A        if (widget instanceof HasWidgets) %7B%0A            for (Widget child : (HasWidgets) widget) %7B%0A                VPaintableWidget paintable = paintableMap.getPaintable(child);%0A                if (paintable != null) %7B%0A                    // If child is a paintable, add it to the collection%0A                    paintables.add(paintable);%0A                %7D else %7B%0A                    // Else keep looking for paintables inside the child widget%0A                    addDescendantPaintables(child, paintables, paintableMap);%0A                %7D%0A            %7D%0A        %7D%0A    %7D%0A%0A%7D%0A

Fix file that was accidentally emptied in previous commit