[ 
https://issues.apache.org/jira/browse/WICKET-6946?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17498097#comment-17498097
 ] 

ASF GitHub Bot commented on WICKET-6946:
----------------------------------------

bitstorm commented on pull request #493:
URL: https://github.com/apache/wicket/pull/493#issuecomment-1050804219


   Merged


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@wicket.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> isVisibleInHierarchy/isEnabledInHierarchy broken by isVisible/isEnabled 
> override
> --------------------------------------------------------------------------------
>
>                 Key: WICKET-6946
>                 URL: https://issues.apache.org/jira/browse/WICKET-6946
>             Project: Wicket
>          Issue Type: Improvement
>          Components: wicket-core
>            Reporter: Mathieu Mitchell
>            Assignee: Sven Meier
>            Priority: Minor
>             Fix For: 10.0.0, 9.8.0
>
>
> Currently, isVisibleInHierarchy and isEnabledInHierarchy can return invalid 
> values when isVisible or isEnabled is overridden. The problem is caused by 
> the caching done in isVisibleInHierarchy/isEnabledInHierarchy. Currently, the 
> cache is invalidated in setVisible/setEnabled. The cache invalidation is not 
> done when components are overriding isVisible/isEnabled.
> Additionally, the documentation mentions impacts of overriding 
> isVisible/isEnabled when using "non-trivial" code, as the methods are called 
> multiple times and can slow down page rendering.
> The best practices chapter mentions overriding isVisible/isEnabled as the 
> appropriate approach. Another best practices page mentions that a component 
> factory should not be used because it prevents overriding isVisible/isEnabled 
> in an anonymous class.
> There is no clear warning that overriding isVisible/isEnabled can break 
> isVisibleInHierarchy/isEnabledInHierarchy when the returned value can change.
> There is also no indication that overriding isVisible/isEnabled is not 
> recommended.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to