Review

a lot of code changed
no need, visibility will be managed by listview