Activities need to pass along shape hanlding of their source logic