review viewport element.isInside() computation