make clip area logic simpler and probably less buggy