Is there a need to cache/duplicate the property zoomHelper.zoomLevel in the old zoomLevel still? IMHO better not, this complicates things only. if the zoomlevel is needed, than it should be queried from the zoomhelper if existant or be hardcoded to 1.