Personally I'd rather put this logic into the RedrawAspect and not redraw if any of those values is nil (because it shoudl mean that it hasn't been positioned yet, e.g. we haven't execute the whole app block at least once)