Resolve a todo

This exports some voiceproxy complexity to voiceproxy rather
than keeping it in latinime

Change-Id: I0b3523e77af4104cc3ed28417956059c734c8bfe
diff --git a/java/src/com/android/inputmethod/deprecated/VoiceProxy.java b/java/src/com/android/inputmethod/deprecated/VoiceProxy.java
index 700709d..c1c6d31 100644
--- a/java/src/com/android/inputmethod/deprecated/VoiceProxy.java
+++ b/java/src/com/android/inputmethod/deprecated/VoiceProxy.java
@@ -92,6 +92,7 @@
     private static final boolean DEBUG = LatinImeLogger.sDBG;
 
     private boolean mAfterVoiceInput;
+    private boolean mConfigurationChanging;
     private boolean mHasUsedVoiceInput;
     private boolean mHasUsedVoiceInputUnsupportedLocale;
     private boolean mImmediatelyAfterVoiceInput;
@@ -159,11 +160,11 @@
         mPasswordText = isPasswordText;
     }
 
-    public void flushVoiceInputLogs(boolean configurationChanged) {
+    public void flushVoiceInputLogs() {
         if (!VOICE_INSTALLED) {
             return;
         }
-        if (!configurationChanged) {
+        if (!mConfigurationChanging) {
             if (mAfterVoiceInput) {
                 mVoiceInput.flushAllTextModificationCounters();
                 mVoiceInput.logInputEnded();
@@ -318,11 +319,11 @@
         mImmediatelyAfterVoiceInput = false;
     }
 
-    public void hideVoiceWindow(boolean configurationChanging) {
+    public void hideVoiceWindow() {
         if (!VOICE_INSTALLED) {
             return;
         }
-        if (!configurationChanging) {
+        if (!mConfigurationChanging) {
             if (mAfterVoiceInput)
                 mVoiceInput.logInputEnded();
             if (mVoiceWarningDialog != null && mVoiceWarningDialog.isShowing()) {
@@ -842,4 +843,12 @@
                 SettingsUtil.LATIN_IME_VOICE_INPUT_SUPPORTED_LOCALES,
                 DEFAULT_VOICE_INPUT_SUPPORTED_LOCALES);
     }
+
+    public void startChangingConfiguration() {
+        mConfigurationChanging = true;
+    }
+
+    public void finishChangingConfiguration() {
+        mConfigurationChanging = false;
+    }
 }
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 2bcd947..6b9ee9b 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -223,9 +223,6 @@
 
     private VibratorCompatWrapper mVibrator;
 
-    // TODO: Move this flag to VoiceProxy
-    private boolean mConfigurationChanging;
-
     // Member variables for remembering the current device orientation.
     private int mDisplayOrientation;
 
@@ -664,10 +661,10 @@
                 mOptionsDialog.dismiss();
         }
 
-        mConfigurationChanging = true;
+        mVoiceProxy.startChangingConfiguration();
         super.onConfigurationChanged(conf);
         mVoiceProxy.onConfigurationChanged(conf);
-        mConfigurationChanging = false;
+        mVoiceProxy.finishChangingConfiguration();
 
         // This will work only when the subtype is not supported.
         LanguageSwitcherProxy.onConfigurationChanged(conf);
@@ -830,7 +827,7 @@
 
         LatinImeLogger.commit();
 
-        mVoiceProxy.flushVoiceInputLogs(mConfigurationChanging);
+        mVoiceProxy.flushVoiceInputLogs();
 
         KeyboardView inputView = mKeyboardSwitcher.getKeyboardView();
         if (inputView != null) inputView.closing();
@@ -960,7 +957,7 @@
             mOptionsDialog.dismiss();
             mOptionsDialog = null;
         }
-        mVoiceProxy.hideVoiceWindow(mConfigurationChanging);
+        mVoiceProxy.hideVoiceWindow();
         super.hideWindow();
     }