Migrate voice features into the open-source LatinIME. This includes
the change to logging to remove any private dependencies and use
broadcast intents to VoiceSearch instead.

I have audited this code and it appears good to go for open-source,
but would appreciate a second pair of eyes.

Still to do after submitting this CL:

* Reintroduce Amith's memory leak fix (37557) which was the only CL
  added to LatinIME since the last merge over to the private copy.
* Make some changes to allow LatinIME to work without voice search
  installed. Currently I believe it will show the mic but fail if
  you press it. We need to base the visibility on the mic on the
  availability of the service.
* Fix this code to use the new Gservices framework, it's still trying
  to use the old one.
diff --git a/res/layout/recognition_status.xml b/res/layout/recognition_status.xml
new file mode 100644
index 0000000..ea23824
--- /dev/null
+++ b/res/layout/recognition_status.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/* 
+**
+** Copyright 2009, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License"); 
+** you may not use this file except in compliance with the License. 
+** You may obtain a copy of the License at 
+**
+**     http://www.apache.org/licenses/LICENSE-2.0 
+**
+** Unless required by applicable law or agreed to in writing, software 
+** distributed under the License is distributed on an "AS IS" BASIS, 
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
+** See the License for the specific language governing permissions and 
+** limitations under the License.
+*/
+--> 
+
+
+<LinearLayout 
+      xmlns:android="http://schemas.android.com/apk/res/android"
+      android:orientation="vertical"
+      android:layout_height="wrap_content"
+      android:layout_width="wrap_content"
+      android:background="@android:color/black"
+      android:paddingBottom="0dip"
+      android:paddingLeft="0dip"
+      android:paddingRight="0dip"
+>
+
+    <LinearLayout 
+       xmlns:android="http://schemas.android.com/apk/res/android"
+       android:id="@+id/main_image"
+       android:orientation="vertical"
+       android:background="@drawable/voice_ime_background"
+                 android:scaleType="fitXY"
+                 android:layout_width="match_parent"
+                 android:layout_height="180dip"
+                 android:paddingBottom="2dip"
+                 android:paddingTop="2dip"
+    >
+
+    <TextView android:id="@+id/text"
+        android:text="@string/voice_initializing"
+        android:layout_height="wrap_content"
+        android:layout_width="wrap_content"
+        android:layout_marginTop="15dip"
+        android:textSize="28sp"
+        android:textColor="#ffffff"
+        android:layout_gravity="center_horizontal"
+    />
+
+    <ImageView android:id="@+id/image"
+        android:layout_height="wrap_content"
+        android:layout_width="wrap_content"
+        android:layout_marginTop="20dip"
+        android:layout_gravity="center_horizontal"
+        android:src="@drawable/mic_slash"
+    />
+
+    <ProgressBar android:id="@+id/progress"
+        android:layout_height="60dip"
+        android:layout_width="60dip"
+        android:layout_marginTop="20dip"
+        android:layout_gravity="center_horizontal"
+        android:visibility="gone"
+        android:indeterminate="true"
+    />
+
+
+
+    </LinearLayout>
+
+    <LinearLayout android:id="@+id/button"
+        android:orientation="vertical"
+        android:background="@drawable/ok_cancel"
+        android:scaleType="fitXY"
+        android:layout_width="match_parent"
+        android:layout_height="42dip"
+        android:paddingLeft="1dip"
+        android:paddingRight="1dip"
+    >
+
+    <TextView android:id="@+id/button_text"
+        android:text="@string/cancel"
+        android:layout_height="wrap_content"
+        android:layout_width="wrap_content"
+        android:layout_marginTop="7dip"
+        android:textSize="19sp"
+        android:textColor="#ffffff"
+        android:layout_gravity="center_horizontal"
+    />
+    </LinearLayout>
+
+</LinearLayout>
+