 			offscreenHeight = abs(maxY - windowMaxY)
 		}
 		
-		let width = self.width ?? (anchorView?.bounds.width ?? 0) - bottomOffset.x
+		let width = self.width ?? (anchorView?.plainView.bounds.width ?? 0) - bottomOffset.x
 		
 		return (x, y, width, offscreenHeight)
 	}

		var layout: ComputeLayoutTuple = (0, 0, 0, 0)
		var direction = self.direction
		
		if let window = UIWindow.visibleWindow() {
			switch direction {
			case .Any:
				layout = computeLayoutBottomDisplay(window: window)
				direction = .Bottom
				
				if layout.offscreenHeight > 0 {
					let topLayout = computeLayoutForTopDisplay(window: window)
					
					if topLayout.offscreenHeight < layout.offscreenHeight {
						layout = topLayout
						direction = .Top
					}
				}
			case .Bottom:
				layout = computeLayoutBottomDisplay(window: window)
				direction = .Bottom
			case .Top:
				layout = computeLayoutForTopDisplay(window: window)
				direction = .Top
			}
		}
		
		let visibleHeight = tableHeight - layout.offscreenHeight

	private let tableView = UITableView()
	
	/// The view to which the drop down will displayed onto.
	public weak var anchorView: AnchorView? {
		didSet { setNeedsUpdateConstraints() }
	}
	
