IMHO, the killer technology for smartphone keyboards would be touch screens that can get textured programmatically. For example, whenever the OS displays the keyboard, the screen would instantly create a slight bevel over each keys. I guess we're a few years away from seeing this though.
Edit: seems like there are already some research in that direction (http://www.technologyreview.fr/computing/26506/page1/)