One of the things that I've found on most pda-phones/smartphones is that they make the phone capabilities feel like just another application. But when you want to use the device as a phone, it would be nice for the rest of the features to melt into the background. The Motorola A780 does this nicely; it is a pda-phone when the flip is opened, but with the flip closed it becomes a regular feature-phone.
So, that gives me an idea for UI layout. First, have the interface support two virtual desktops, most likely via the window manager. The primary desktop (PDA desktop) would remain how OpenMoko has it currently laid out. The second desktop (PHONE desktop), however, should resemble the face of a normal phone. The bottom half (or two thirds, whatever) of the screen would have a permanent phone keypad displayed (the keypad app), includuding directional buttons and several special-purpose buttons (answer/disconnect, function-A, function-B, Menu, OK, etc.). Any application running in the Phone desktop would only be able to write to the window in the upper part of the screen, and they would receive their input through the keypad app runnin in the bottom. The keypad app could have an API so that apps can request that certain keys be re-labled when that app is in the forground, but other than that the keypad would always display a similar layout for any running app. This would enforce a consistant feel among the various apps. Now any app that wants to use the secondary Phone desktop would have to be specifically coded for it; I'm thinking that apps such as the Dialer would be running in the background, and have an active connection to the Phone desktop along with the PDA desktop. The list of apps that should have Phone desktop capabilities would include the Dialer, SMS/Email, Media player, Calculator. Also, I haven't decided what the best method of switching between desktops should be -- should a common button that appears in both desktops toggle between the two, or should there be two buttons that appear on each desktop, at opposite sides of the screen, so that you know that hitting the lower left corner of the display will always bring up the Phone desktop (even if it is already displayed). Or maybe have one of the hardware buttons assigned to this task. _______________________________________________ OpenMoko community mailing list [email protected] http://lists.openmoko.org/mailman/listinfo/community

