When the components which are placed inside a DDxxxLayout are themself containers, the drop can be done inside such a layout.
The result is then, that the droped component is placed at the end of the layout and not in the place of the drop.
Here a example screenshot where the DDCssLayout is used, and the components to drag&drop are VerticalLayouts with two button on them.
As long as we drag it over the VerticalLayouts it works fine, but when the drop indicator shuffles inside the VerticalLayouts things get messy.
Sample code with the default DefaultCssLayoutDropHandler drop handler active
private class DragComponent extends VerticalLayout
{
public DragComponent(int i)
{
setMargin(true);
setHeight(10, Unit.EM);
setWidth(10, Unit.EM);
Button button1= new Button("Panel "+i);
addComponent(button1);
Button button2= new Button("Button2");
addComponent(button2);
}
}

When the components which are placed inside a DDxxxLayout are themself containers, the drop can be done inside such a layout.
The result is then, that the droped component is placed at the end of the layout and not in the place of the drop.
Here a example screenshot where the DDCssLayout is used, and the components to drag&drop are VerticalLayouts with two button on them.
As long as we drag it over the VerticalLayouts it works fine, but when the drop indicator shuffles inside the VerticalLayouts things get messy.
Sample code with the default DefaultCssLayoutDropHandler drop handler active