These four lines don't capture the case where the visible regions are completely disjoint.  I suspect you should just change it to something vaguer like "notifiing elements whose visiblity has changed"