Base the layout calculations on self.view.bounds