If the One X (and One S, for that matter) use capacitive instead of on-screen buttons, then how will it deal with a legacy app that does not have a built-in menu button for ICS?
The same way an app that is designed to work with both tablets (3.0+) and phones handles it. Its very intuitive when developing an app with menus, I'm not even sure if a developer could possibly get it wrong. When a developer wants a menu, he says I want a menu, than Android decides where it goes and how it behaves, customization of menu location and behavior are more like a request to Android than a hard coded option, if an ICS app wants a software menu button but Android detects a hardware button then the hardware button will win.
Google developed ICS to support software buttons, but they added the support for it to the existing hardware buttons, rather than deprecating hardware buttons.
The same way an app that is designed to work with both tablets (3.0+) and phones handles it. Its very intuitive when developing an app with menus, I'm not even sure if a developer could possibly get it wrong. When a developer wants a menu, he says I want a menu, than Android decides where it goes and how it behaves, customization of menu location and behavior are more like a request to Android than a hard coded option, if an ICS app wants a software menu button but Android detects a hardware button then the hardware button will win.
Google developed ICS to support software buttons, but they added the support for it to the existing hardware buttons, rather than deprecating hardware buttons.
I have a transformer prime running ICS. The Google news and weather app is useless because there is no menu button. Hopefully on a phone this is different.
for everybody wondering, there is a little bar that opens in legacy apps... look at this youtube video and go to about the 7 minute mark