diff --git a/java/res/layout/recognition_status.xml b/java/res/layout/recognition_status.xml
index 1ec06ba..49af773 100644
--- a/java/res/layout/recognition_status.xml
+++ b/java/res/layout/recognition_status.xml
@@ -63,8 +63,7 @@
     <ProgressBar android:id="@+id/progress"
         android:layout_height="60dip"
         android:layout_width="60dip"
-        android:layout_marginTop="20dip"
-        android:layout_gravity="center_horizontal"
+        android:layout_gravity="center"
         android:visibility="gone"
         android:indeterminate="true"
         android:indeterminateOnly="false"
diff --git a/java/src/com/android/inputmethod/voice/RecognitionView.java b/java/src/com/android/inputmethod/voice/RecognitionView.java
index 1e99c3c..7cec0b0 100644
--- a/java/src/com/android/inputmethod/voice/RecognitionView.java
+++ b/java/src/com/android/inputmethod/voice/RecognitionView.java
@@ -274,12 +274,11 @@
 
         final int count = (endIndex - startIndex) / numSamplePerWave;
         final float deltaX = 1.0f * w / count;
-        int yMax = h / 2 - 10;
+        int yMax = h / 2 - 8;
         Path path = new Path();
         c.translate(0, yMax);
         float x = 0;
         path.moveTo(x, 0);
-        yMax -= 10;
         for (int i = 0; i < count; i++) {
             final int avabs = getAverageAbs(waveBuffer, startIndex, i , numSamplePerWave);
             int sign = ( (i & 01) == 0) ? -1 : 1;
@@ -297,8 +296,8 @@
         mImage.setImageBitmap(b);
         mImage.setVisibility(View.VISIBLE);
         MarginLayoutParams mProgressParams = (MarginLayoutParams)mProgress.getLayoutParams();
-        mProgressParams.topMargin = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
-                -h / 2 - 18, mContext.getResources().getDisplayMetrics());
+        mProgressParams.topMargin = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PX,
+                -h , mContext.getResources().getDisplayMetrics());
 
         // Tweak the padding manually to fill out the whole view horizontally.
         // TODO: Do this in the xml layout instead.
