Here's another example: it also does it if you turn off the rotation lock.
* Open the browser
* Hold the phone long edge perpendicular to the table
* Wait until it switches to portrait mode
* Put phone flat on the table
* Turn on rotation lock
* Hold phone short edge perpendicular to the table for a few seconds
* Put phone flat on the table
* Turn off rotation lock
* Browser rotates
This just happened to me yesterday. I was happily reading some news in portrait mode when it occurred to me that the rotation lock was on and I normally keep it turned off. So I turned it off - and got an incomprehensible rotation.
Since it's locked in portrait mode, turning off the rotation lock happens while the UI is in portrait mode. At that time there's no accelerometer data to indicate that the phone is really in landscape. There is only historical accelerometer data indicating that once upon a time the phone was in landscape. But it rotates anyway. This is why I'm saying you should only ever rotate the phone to landscape if the accelerometer says it's in landscape right now.
Here's another example: it also does it if you turn off the rotation lock.
* Open the browser
* Hold the phone long edge perpendicular to the table
* Wait until it switches to portrait mode
* Put phone flat on the table
* Turn on rotation lock
* Hold phone short edge perpendicular to the table for a few seconds
* Put phone flat on the table
* Turn off rotation lock
* Browser rotates
This just happened to me yesterday. I was happily reading some news in portrait mode when it occurred to me that the rotation lock was on and I normally keep it turned off. So I turned it off - and got an incomprehensible rotation.
Since it's locked in portrait mode, turning off the rotation lock happens while the UI is in portrait mode. At that time there's no accelerometer data to indicate that the phone is really in landscape. There is only historical accelerometer data indicating that once upon a time the phone was in landscape. But it rotates anyway. This is why I'm saying you should only ever rotate the phone to landscape if the accelerometer says it's in landscape right now.