Ah ... I think I see the issue ... the minirover explicitly sets its `visible` to `true`, which I think happens after the blocklyButton has requested `visible` be set to `false`.  I agree with you that the recursive visibility setting causes heartache.  We need a system similar to the one Greg wrote in UltiSim.  You have created a workaround that's similar here, and I like it.  It will serve us well until we're able to change the way visibility works in VWF.