dataInvalidated now takes a parameter to decide whether it should reset the scroll positions. The older behavior is preserved without params but the method is deprecated
Added a utility class
null check