diff options
| author | kr.angelov <kr.angelov@gmail.com> | 2013-10-31 17:34:01 +0000 |
|---|---|---|
| committer | kr.angelov <kr.angelov@gmail.com> | 2013-10-31 17:34:01 +0000 |
| commit | 594c71f35d2c4c839d200648b4f4f5a25a4a5b33 (patch) | |
| tree | 19bc7888afd54792b96fcffc647d351f12071c6c /src | |
| parent | 83a10ce25a2c92fec24400773aca640a873fb2e8 (diff) | |
make the input mode in the Android translator persistent
Diffstat (limited to 'src')
| -rw-r--r-- | src/ui/android/src/org/grammaticalframework/ui/android/MainActivity.java | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/ui/android/src/org/grammaticalframework/ui/android/MainActivity.java b/src/ui/android/src/org/grammaticalframework/ui/android/MainActivity.java index dd4d0936b..ab14bbfe2 100644 --- a/src/ui/android/src/org/grammaticalframework/ui/android/MainActivity.java +++ b/src/ui/android/src/org/grammaticalframework/ui/android/MainActivity.java @@ -7,6 +7,7 @@ import java.util.List; import android.app.Activity; import android.content.Context; import android.content.Intent; +import android.content.SharedPreferences; import android.os.AsyncTask; import android.os.Bundle; import android.speech.SpeechRecognizer; @@ -73,11 +74,12 @@ public class MainActivity extends Activity { } }); - input_mode = true; + SharedPreferences pref = getPreferences(MODE_PRIVATE); + input_mode = pref.getBoolean("input_mode", true); if (!SpeechRecognizer.isRecognitionAvailable(this)) { input_mode = false; - mStartStopButton.setImageResource(R.drawable.ic_keyboard); } + mStartStopButton.setImageResource(input_mode ? R.drawable.ic_mic : R.drawable.ic_keyboard); mSpeechListener = new SpeechInputListener(); @@ -131,10 +133,19 @@ public class MainActivity extends Activity { } @Override + protected void onSaveInstanceState(Bundle outState) { + super.onSaveInstanceState(outState); + + outState.putBoolean("input_mode", input_mode); + } + + @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.main, menu); - + + menu.getItem(0).setTitle(input_mode ? R.string.keyboard_input : R.string.mic_input); + if (!SpeechRecognizer.isRecognitionAvailable(this)) { menu.getItem(0).setEnabled(false); } @@ -155,6 +166,11 @@ public class MainActivity extends Activity { mStartStopButton.setImageResource(R.drawable.ic_mic); input_mode = true; } + + SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit(); + editor.putBoolean("input_mode", input_mode); + editor.commit(); + return true; default: return super.onOptionsItemSelected(item); |
