My app uses the old-style options menu. Currently we target API 9. On the Galaxy S4 I notice the following behavior:
- User taps on the menu button. Menu is displayed as expected.
- User taps on "more" to access the overflow section. Overflow section is displayed as expected.
- User taps the back button to return to the original options menu. Original menu displayed as expected.
At this point, tapping on any element in the options menu (including the "More") option seems to have no effect. However the system is actually caching those taps. If the user taps the a menu five times (with no visible effect) then taps the back button to hide the menu, then taps the menu button to display the menu once again, all the cached taps take place right away. onOptionsMenuItemSelected() is called once for every time the user tapped that menu item.
This only happens on the S4 (and possibly other Samsung devices). Notably, I don't see this behavior using a Galaxy Nexus running stock 4.2.2.
Is this a bug with Samsung's customization of Android, or is it more likely I'm doing something wrong in my app and the stock Android code is just more forgiving?