Temporary "double tap to answer call" UI for Sholes.
authorDavid Brown <dab@google.com>
Wed, 27 May 2009 20:57:36 +0000 (13:57 -0700)
committerDavid Brown <dab@google.com>
Thu, 11 Jun 2009 00:52:10 +0000 (17:52 -0700)
commit419426e206b3d8e76ebd4e3a19d8e5cddbdff658
tree18f63acd547a60a99de08a1eae2ce6d2662754c0
parent1924ac342f326d34da700829a8115df227e506b6
Temporary "double tap to answer call" UI for Sholes.

Since we're about to start dogfooding Sholes devices (which have no hard
send/end buttons), here's an ultra-simple onscreen UI that lets you
double-tap to answer an incoming call.

This is a TEMPORARY HACK until we have the real UI (which will go into
master, and may come from the moto team.)

Implementation notes and TODOs:

- The widget looks pretty ugly; I don't have any assets from Jeff (or
  moto) yet so I'm just using the default button background.
  There's also no visual feedback when you tap the button; that needs to
  be designed too.

- Right now the double-tap-to-answer widget is only used on sholes.
  At some point (once I get a nicer looking asset for the button
  background) I *do* plan to enable it for ALL devices, so more people get
  a chance to try it out.  But in the long term this UI will only be used
  on devices with no hard send/end buttons.

- I check for sholes devices by looking at the ro.product.device system
  property.  This is a temporary hack; in master these onscreen buttons
  will be enabled via a special resource from the vendor/moto overlay,
  but that overlay hierarchy doesn't exist yet.

- The double-tap detection code is a little ugly; I added a TODO about
  extracting it out to a helper class that can listen for double-taps on
  an arbitrary View, or maybe even a whole new "DoubleTapButton" widget.

TESTED:
 - Built dream-eng, incoming call experience is unchanged.
 - Built sholes-eng, the button appears for incoming calls, and
   double-tapping answers the call.  ("Answering" works in the emulator,
   at least.)
 - Made sure I didn't break the "touch lock" overlay for the dialpad.
res/layout/incall_screen.xml
res/layout/onscreen_answer_ui.xml [new file with mode: 0644]
res/values/strings.xml
src/com/android/phone/InCallScreen.java