Loading java/res/layout/recognition_status.xml +16 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,22 @@ android:layout_centerInParent="true" android:visibility="gone"/> </RelativeLayout> <!-- The text is set by the code. We specify a random text (voice_error), so the text view does not have a zero height. This is necessary to keep the slash mic and the recording mic is the same position --> <TextView android:id="@+id/language" android:text="@string/voice_error" android:layout_height="wrap_content" android:layout_width="wrap_content" android:singleLine="true" android:textSize="14sp" android:layout_marginBottom="3dip" android:layout_gravity="center" android:textColor="#ffffff" android:visibility="invisible"/> <Button android:id="@+id/button" android:layout_width="match_parent" Loading java/src/com/android/inputmethod/voice/RecognitionView.java +23 −4 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.inputmethod.voice; import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.SubtypeSwitcher; import android.content.Context; import android.content.res.Resources; import android.graphics.Bitmap; Loading @@ -35,13 +38,11 @@ import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.TextView; import com.android.inputmethod.latin.R; import java.io.ByteArrayOutputStream; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.ShortBuffer; import java.util.List; import java.util.Locale; /** * The user interface for the "Speak now" and "working" states. Loading @@ -60,6 +61,7 @@ public class RecognitionView { private ImageView mImage; private View mProgress; private SoundIndicator mSoundIndicator; private TextView mLanguage; private Button mButton; private Drawable mInitializing; Loading Loading @@ -105,6 +107,7 @@ public class RecognitionView { mButton = (Button) mView.findViewById(R.id.button); mButton.setOnClickListener(clickListener); mText = (TextView) mView.findViewById(R.id.text); mLanguage = (TextView) mView.findViewById(R.id.language); mContext = context; } Loading Loading @@ -184,9 +187,14 @@ public class RecognitionView { private void prepareDialog(CharSequence text, Drawable image, CharSequence btnTxt) { /* * The mic of INIT and of LISTENING has to be displayed in the same position. To accomplish * that, some text visibility are not set as GONE but as INVISIBLE. */ switch (mState) { case INIT: mText.setVisibility(View.GONE); mText.setVisibility(View.INVISIBLE); mProgress.setVisibility(View.GONE); Loading @@ -196,6 +204,8 @@ public class RecognitionView { mSoundIndicator.setVisibility(View.GONE); mSoundIndicator.stop(); mLanguage.setVisibility(View.INVISIBLE); mPopupLayout.setBackgroundDrawable(mListeningBorder); break; case LISTENING: Loading @@ -209,6 +219,11 @@ public class RecognitionView { mSoundIndicator.setVisibility(View.VISIBLE); mSoundIndicator.start(); Locale locale = SubtypeSwitcher.getInstance().getInputLocale(); mLanguage.setVisibility(View.VISIBLE); mLanguage.setText(SubtypeSwitcher.getFullDisplayName(locale, true)); mPopupLayout.setBackgroundDrawable(mListeningBorder); break; case WORKING: Loading @@ -223,6 +238,8 @@ public class RecognitionView { mSoundIndicator.setVisibility(View.GONE); mSoundIndicator.stop(); mLanguage.setVisibility(View.GONE); mPopupLayout.setBackgroundDrawable(mWorkingBorder); break; case READY: Loading @@ -237,6 +254,8 @@ public class RecognitionView { mSoundIndicator.setVisibility(View.GONE); mSoundIndicator.stop(); mLanguage.setVisibility(View.GONE); mPopupLayout.setBackgroundDrawable(mErrorBorder); break; default: Loading Loading
java/res/layout/recognition_status.xml +16 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,22 @@ android:layout_centerInParent="true" android:visibility="gone"/> </RelativeLayout> <!-- The text is set by the code. We specify a random text (voice_error), so the text view does not have a zero height. This is necessary to keep the slash mic and the recording mic is the same position --> <TextView android:id="@+id/language" android:text="@string/voice_error" android:layout_height="wrap_content" android:layout_width="wrap_content" android:singleLine="true" android:textSize="14sp" android:layout_marginBottom="3dip" android:layout_gravity="center" android:textColor="#ffffff" android:visibility="invisible"/> <Button android:id="@+id/button" android:layout_width="match_parent" Loading
java/src/com/android/inputmethod/voice/RecognitionView.java +23 −4 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.inputmethod.voice; import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.SubtypeSwitcher; import android.content.Context; import android.content.res.Resources; import android.graphics.Bitmap; Loading @@ -35,13 +38,11 @@ import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.TextView; import com.android.inputmethod.latin.R; import java.io.ByteArrayOutputStream; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.ShortBuffer; import java.util.List; import java.util.Locale; /** * The user interface for the "Speak now" and "working" states. Loading @@ -60,6 +61,7 @@ public class RecognitionView { private ImageView mImage; private View mProgress; private SoundIndicator mSoundIndicator; private TextView mLanguage; private Button mButton; private Drawable mInitializing; Loading Loading @@ -105,6 +107,7 @@ public class RecognitionView { mButton = (Button) mView.findViewById(R.id.button); mButton.setOnClickListener(clickListener); mText = (TextView) mView.findViewById(R.id.text); mLanguage = (TextView) mView.findViewById(R.id.language); mContext = context; } Loading Loading @@ -184,9 +187,14 @@ public class RecognitionView { private void prepareDialog(CharSequence text, Drawable image, CharSequence btnTxt) { /* * The mic of INIT and of LISTENING has to be displayed in the same position. To accomplish * that, some text visibility are not set as GONE but as INVISIBLE. */ switch (mState) { case INIT: mText.setVisibility(View.GONE); mText.setVisibility(View.INVISIBLE); mProgress.setVisibility(View.GONE); Loading @@ -196,6 +204,8 @@ public class RecognitionView { mSoundIndicator.setVisibility(View.GONE); mSoundIndicator.stop(); mLanguage.setVisibility(View.INVISIBLE); mPopupLayout.setBackgroundDrawable(mListeningBorder); break; case LISTENING: Loading @@ -209,6 +219,11 @@ public class RecognitionView { mSoundIndicator.setVisibility(View.VISIBLE); mSoundIndicator.start(); Locale locale = SubtypeSwitcher.getInstance().getInputLocale(); mLanguage.setVisibility(View.VISIBLE); mLanguage.setText(SubtypeSwitcher.getFullDisplayName(locale, true)); mPopupLayout.setBackgroundDrawable(mListeningBorder); break; case WORKING: Loading @@ -223,6 +238,8 @@ public class RecognitionView { mSoundIndicator.setVisibility(View.GONE); mSoundIndicator.stop(); mLanguage.setVisibility(View.GONE); mPopupLayout.setBackgroundDrawable(mWorkingBorder); break; case READY: Loading @@ -237,6 +254,8 @@ public class RecognitionView { mSoundIndicator.setVisibility(View.GONE); mSoundIndicator.stop(); mLanguage.setVisibility(View.GONE); mPopupLayout.setBackgroundDrawable(mErrorBorder); break; default: Loading