anybody with more insight into transparentResolvers (matej, igor?):
what is the desired behavior for invisible transparentResolvers?
it's really undefined right now, as the resolver is not rendered, but the
"children" _are_ (though without markup).
if "children" of an invisible transparentResolver should be rendered, i may
have an easy fix for this in Component#render(MarkupStream):
instead of
if (isRenderAllowed() && isVisible()) ....
we could do
if (isRenderAllowed() &&
(isVisible() || (this instanceof MarkupContainer &&
((MarkupContainer)this).isTransparentResolver())))
nevertheless i think that the expected behavior of setting a
transparentResolver to invisible is that it's "children" are not rendered.
Gerolf
On 10/23/07, Gerolf Seitz (JIRA) <[EMAIL PROTECTED]> wrote:
>
> invisible TransparentResolver skips markup of visible children and thus
> resulting in an exception in Page#checkRendering (component not found in
> markup)
>
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: WICKET-1095
> URL: https://issues.apache.org/jira/browse/WICKET-1095
> Project: Wicket
> Issue Type: Bug
> Affects Versions: 1.3.0-beta4
> Reporter: Gerolf Seitz
> Fix For: 1.3.0-beta5
>
>
> the code involved can be found at
> http://papernapkin.org/pastebin/view/13287
>
> if a transparent (= isTransparentResolver() {return true;})
> markupContainer is set to invisible, the component's markup is skipped (
> markupStream.skipComponent() in Component.java line 2319).
> if the parent containing the transparent markupContainer is added to the
> ajax request target and there is a component (in this case a button)
> "inside" the transparent markupcontainer's markup but is actually a child of
> the transparent markupcontainer's parent, the button is never actually
> rendered (due to skipping the markup of the transparent webmarkupcontainer)
> but is still visibleInHierarchy (see Page.java line 1005), because the
> invisible transparent markupcontainer is not a parent of the button.
>
> the ultimate question is: what is the desired behavior for an invisible
> transparentResolver? render it's "children" or not?
>
> --
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>
>