Abstract: Disclosed are systems, methods, and non-transitory computer-readable storage media for scrolling a virtual keyboard on a touch screen device including a display. A first aspect allows detecting a user contact swipe motion in a predetermined direction along said keyboard, scrolling said keyboard across said display in accordance with said motion, and stopping said scrolling upon termination of user contact swipe motion. A second aspect allows scrolling of a virtual keyboard to snap to an intelligent position based on a song key or relative minor of the song key. A third aspect allows a note to be held when a user's finger remains in contact with the display even though the finger is no longer in contact with a key linked to the note on the keyboard as a result of scrolling.