You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by ad...@apache.org on 2015/11/07 21:17:59 UTC
[1/2] wicket git commit: Revert "WICKET-6023 small tweak for
component queuing for the AbstractRepeater"
Repository: wicket
Updated Branches:
refs/heads/wicket-7.x 63984b07c -> 98a2189d6
Revert "WICKET-6023 small tweak for component queuing for the AbstractRepeater"
This reverts commit 86f57f3fcb3b3515f0fb61d38d221628d4abe0ae.
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/bfd57bc8
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/bfd57bc8
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/bfd57bc8
Branch: refs/heads/wicket-7.x
Commit: bfd57bc839c26efe97c5704964ca26ceb6c61119
Parents: 63984b0
Author: Andrea Del Bene <ad...@apache.org>
Authored: Sat Nov 7 20:16:38 2015 +0100
Committer: Andrea Del Bene <ad...@apache.org>
Committed: Sat Nov 7 20:16:38 2015 +0100
----------------------------------------------------------------------
.../wicket/markup/html/list/ListItem.java | 12 +--------
.../markup/repeater/AbstractRepeater.java | 28 ++++++++++++++++++++
2 files changed, 29 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/bfd57bc8/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java
index a3a7da2..68565a5 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/list/ListItem.java
@@ -16,11 +16,7 @@
*/
package org.apache.wicket.markup.html.list;
-import org.apache.wicket.DequeueContext;
import org.apache.wicket.IGenericComponent;
-import org.apache.wicket.IQueueRegion;
-import org.apache.wicket.markup.IMarkupFragment;
-import org.apache.wicket.markup.Markup;
import org.apache.wicket.model.IModel;
/**
@@ -32,7 +28,7 @@ import org.apache.wicket.model.IModel;
* @param <T>
* Model object type
*/
-public class ListItem<T> extends LoopItem implements IGenericComponent<T>, IQueueRegion
+public class ListItem<T> extends LoopItem implements IGenericComponent<T>
{
private static final long serialVersionUID = 1L;
@@ -101,10 +97,4 @@ public class ListItem<T> extends LoopItem implements IGenericComponent<T>, IQueu
{
setDefaultModelObject(object);
}
-
- @Override
- public DequeueContext newDequeueContext()
- {
- return new DequeueContext(getMarkup(), this, true);
- }
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/bfd57bc8/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java
index 832196f..25e320a 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/repeater/AbstractRepeater.java
@@ -157,4 +157,32 @@ public abstract class AbstractRepeater extends WebMarkupContainer
* Callback to let the repeater know it should populate itself with its items.
*/
protected abstract void onPopulate();
+
+ @Override
+ public void dequeue(DequeueContext dequeue)
+ {
+ if (size() > 0)
+ {
+ // essentially what we do is for every child replace the repeater with the child in
+ // dequeue container stack and run the dequeue on the child. we also take care to reset
+ // the state of the dequeue context after we process every child.
+
+ Bookmark bookmark = dequeue.save();
+
+ for (Component child : this)
+ {
+ if (child instanceof MarkupContainer)
+ {
+ dequeue.popContainer(); // pop the repeater
+ MarkupContainer container = (MarkupContainer) child;
+ dequeue.pushContainer(container);
+ container.dequeue(dequeue);
+ dequeue.restore(bookmark);
+ }
+ }
+ }
+
+ dequeue.skipToCloseTag();
+
+ }
}
[2/2] wicket git commit: WICKET-6026 Problem in detecting child id on
nested
Posted by ad...@apache.org.
WICKET-6026 Problem in detecting child id on nested <wicket:enclosure>
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/98a2189d
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/98a2189d
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/98a2189d
Branch: refs/heads/wicket-7.x
Commit: 98a2189d68fae0785724d5d29a04cee72d2f1323
Parents: bfd57bc
Author: Andrea Del Bene <ad...@apache.org>
Authored: Sat Nov 7 20:57:32 2015 +0100
Committer: Andrea Del Bene <ad...@apache.org>
Committed: Sat Nov 7 21:16:59 2015 +0100
----------------------------------------------------------------------
.../markup/parser/filter/EnclosureHandler.java | 2 +-
.../markup/html/internal/EnclosureTest.java | 44 ++++++++++++++++++++
.../wicket/queueing/ComponentQueueingTest.java | 1 +
3 files changed, 46 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/98a2189d/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/EnclosureHandler.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/EnclosureHandler.java b/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/EnclosureHandler.java
index b29da3b..5074944 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/EnclosureHandler.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/parser/filter/EnclosureHandler.java
@@ -144,7 +144,7 @@ public final class EnclosureHandler extends AbstractMarkupFilter implements ICom
// Are we inside a wicket:enclosure tag?
else if (stack != null)
{
- ComponentTag lastEnclosure = stack.getLast();
+ ComponentTag lastEnclosure = stack.getFirst();
// If the enclosure tag has NO child attribute, then ...
if (Strings.isEmpty(lastEnclosure.getAttribute(CHILD_ATTRIBUTE)))
http://git-wip-us.apache.org/repos/asf/wicket/blob/98a2189d/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
index c0e8d33..8ddc60a 100644
--- a/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/markup/html/internal/EnclosureTest.java
@@ -432,4 +432,48 @@ public class EnclosureTest extends WicketTestCase
tester.assertContainsNot(ChildWithDeeperPathInTransparentContainerPage.LABEL_TEXT);
}
+
+ @Test
+ public void nestedEnclousers()
+ {
+ TestPageMarkup p = new TestPageMarkup();
+ p.setPageMarkup("<wicket:enclosure child='labelOuter'>tOuter Enclosure <span wicket:id='labelOuter'/>"
+ + "<wicket:enclosure>Inner Enclosure <span wicket:id='labelInner' /></wicket:enclosure>"
+ + "</wicket:enclosure>");
+
+ p.add(new Label("labelOuter"), new Label("labelInner"));
+ tester.startPage(p);
+ }
+
+ private static class TestPageMarkup extends WebPage implements IMarkupResourceStreamProvider
+ {
+ private String markup;
+
+ public TestPageMarkup()
+ {
+ }
+
+ public TestPageMarkup(String markup)
+ {
+ this.markup = markup;
+ }
+
+ protected String getPageMarkup()
+ {
+ return markup;
+ }
+
+ public void setPageMarkup(String markup)
+ {
+ this.markup = markup;
+ }
+
+ @Override
+ public IResourceStream getMarkupResourceStream(MarkupContainer container,
+ Class<?> containerClass)
+ {
+ return new StringResourceStream(getPageMarkup());
+ }
+
+ }
}
http://git-wip-us.apache.org/repos/asf/wicket/blob/98a2189d/wicket-core/src/test/java/org/apache/wicket/queueing/ComponentQueueingTest.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/java/org/apache/wicket/queueing/ComponentQueueingTest.java b/wicket-core/src/test/java/org/apache/wicket/queueing/ComponentQueueingTest.java
index 3912d62..463999d 100644
--- a/wicket-core/src/test/java/org/apache/wicket/queueing/ComponentQueueingTest.java
+++ b/wicket-core/src/test/java/org/apache/wicket/queueing/ComponentQueueingTest.java
@@ -19,6 +19,7 @@ package org.apache.wicket.queueing;
import static org.apache.wicket.queueing.WicketMatchers.hasPath;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.nullValue;
+import static org.junit.Assert.*;
import java.util.ArrayList;