 	let row2Letters = ["A","S","D","F","G","H","J","K","L"]
 	let row3Letters = ["Z","X","C","V","B","N","M"]
 	
+	var shiftState: KeyboardShiftState = .Disabled {
+		didSet {
+			
+		}
+	}
+
 	let shiftButton : UIButton = {
 		let button = UIButton.buttonWithType(.System) as UIButton
 		button.setTranslatesAutoresizingMaskIntoConstraints(false)

		UIButton.appearance().tintColor = KeyboardAppearance.secondaryButtonColorForApperance(appearance)
    }
	
	// MARK: Gestures
	
	func didTap(sender: UIGestureRecognizer) {

	/// TODO: Fix this once `documentContextBeforeInput` stops always returning nil.
	/// Did a left swipe gesture. Delete until previous chunk of whitespace.
	func didSwipeLeft(sender: UIGestureRecognizer) {
		self.deleteWord()
	}
	
	func deleteKeyPressed(sender: UIButton) {
		self.deleteCharacter()
	}
	
	func shiftKeyPressed(sender: UIButton) {
		switch self.shiftState {
		case .Disabled:
			self.shiftState = .Enabled
		case .Enabled:
			self.shiftState = .Disabled
		case .Locked:
			self.shiftState = .Disabled
		}
	}
}
