Generify Task and add #isVisible to check when using widgets