WICKET-6018 TransparentWebMarkupContainer is not really 'transparent'
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/bb2ba280 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/bb2ba280 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/bb2ba280 Branch: refs/heads/lambdas Commit: bb2ba2805f5dfb2988c54911cb0008bd4fc84ae0 Parents: 0cb1f69 Author: Andrea Del Bene <[email protected]> Authored: Mon Nov 2 15:47:52 2015 +0100 Committer: Andrea Del Bene <[email protected]> Committed: Mon Nov 2 16:17:48 2015 +0100 ---------------------------------------------------------------------- .../markup/html/TransparentWebMarkupContainer.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/bb2ba280/wicket-core/src/main/java/org/apache/wicket/markup/html/TransparentWebMarkupContainer.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/TransparentWebMarkupContainer.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/TransparentWebMarkupContainer.java index 270560f..cc336f3 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/TransparentWebMarkupContainer.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/TransparentWebMarkupContainer.java @@ -156,4 +156,19 @@ public class TransparentWebMarkupContainer extends WebMarkupContainer implements } } } + + @Override + protected void addDequeuedComponent(Component component, ComponentTag tag) + { + //Transparent containers should be 'transparent' to component queuing, + //hence we should add queued components to parent. + MarkupContainer parent = getParent(); + + while (parent instanceof TransparentWebMarkupContainer) + { + parent = parent.getParent(); + } + + parent.add(component); + } }
