I’ve been thinking about the screen that comes up on your Android phone when you are speaking on the phone with someone. Yes, very odd but it’s captured my imagination a bit. The reason is that it ends up being quite complex and non-intuitive.
The difficulty comes because when you’re talking on the phone, the phone is at the side of your face. Because many phones now use Capacitive screens, there is a side effect that your face is activating the touch screen on your phone in many places at once. Now, you don’t want to hang up or dial random numbers when you put the phone to your face!
Plus, the state changes have to be caught. You are probably looking at the screen while dialing, but when you put the phone to your ear, you don’t care what is on the screen. Even though you are still activating the touch screen (with your face), you might be on the phone for an hour, and you don’t want to run the battery to light up the screen for that long! Then the moment you take the phone off your ear, you want the screen back on because you probably want to hang up or check some information etc.
My first guess at handling this is to:
- Timeout the screen after a certain amount of time
- Timeout the screen if the screen is being pressed, but not let go
- Activate the screen (but not handle any clicks) when the press ends
But I don’t think that completely works, because if the person was to shift the phone around on their ear, then the screen would activate and listen for a keypress that could accidentally hang up the phone! It is a surprisingly deep and challenging problem.