From 9058bc0df40c1124d7140bacf39bf6cf547ecb79 Mon Sep 17 00:00:00 2001
From: Jean Chalard <jchalard@google.com>
Date: Fri, 18 Jan 2013 16:40:55 +0900
Subject: [PATCH] [AD1] Add an option to read an arbitrary dictionary.

Bug: 7702011
Change-Id: I76f52dd3fdb22824fc243ab3845ceec610469c81
---
 java/res/values/strings.xml                      |  2 ++
 java/res/xml/prefs_for_debug.xml                 | 16 ++++++++--------
 .../android/inputmethod/latin/DebugSettings.java | 15 +++++++++++++++
 3 files changed, 25 insertions(+), 8 deletions(-)

diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml
index bf0ba4001..f726c1ce8 100644
--- a/java/res/values/strings.xml
+++ b/java/res/values/strings.xml
@@ -375,6 +375,8 @@
     <string name="prefs_keypress_vibration_duration_settings">Keypress vibration duration settings</string>
     <!-- Title of the settings for keypress sound volume -->
     <string name="prefs_keypress_sound_volume_settings">Keypress sound volume settings</string>
+    <!-- Title of the settings for reading an external dictionary file -->
+    <string name="prefs_read_external_dictionary">Read external dictionary file</string>
 
     <!-- Title of the button to revert to the default value of the device in the settings dialog [CHAR LIMIT=15] -->
     <string name="button_default">Default</string>
diff --git a/java/res/xml/prefs_for_debug.xml b/java/res/xml/prefs_for_debug.xml
index 605a02f07..8efd1c9e8 100644
--- a/java/res/xml/prefs_for_debug.xml
+++ b/java/res/xml/prefs_for_debug.xml
@@ -23,8 +23,7 @@
             android:title="@string/prefs_enable_log"
             android:summary="@string/prefs_description_log"
             android:persistent="true"
-            android:defaultValue="false"
-            />
+            android:defaultValue="false" />
 
     <ListPreference
             android:key="pref_keyboard_layout_20110916"
@@ -32,26 +31,27 @@
             android:persistent="true"
             android:entryValues="@array/keyboard_layout_modes_values"
             android:entries="@array/keyboard_layout_modes"
-            android:defaultValue="@string/config_default_keyboard_theme_index"
-            />
+            android:defaultValue="@string/config_default_keyboard_theme_index" />
 
     <CheckBoxPreference
             android:key="debug_mode"
             android:title="@string/prefs_debug_mode"
             android:persistent="true"
-            android:defaultValue="false"
-            />
+            android:defaultValue="false" />
 
     <CheckBoxPreference
             android:key="force_non_distinct_multitouch"
             android:title="@string/prefs_force_non_distinct_multitouch"
             android:persistent="true"
-            android:defaultValue="false"
-            />
+            android:defaultValue="false" />
 
     <CheckBoxPreference
             android:key="usability_study_mode"
             android:title="@string/prefs_usability_study_mode"
             android:persistent="true"
             android:defaultValue="false" />
+
+    <PreferenceScreen
+        android:key="read_external_dictionary"
+        android:title="@string/prefs_read_external_dictionary" />
 </PreferenceScreen>
diff --git a/java/src/com/android/inputmethod/latin/DebugSettings.java b/java/src/com/android/inputmethod/latin/DebugSettings.java
index 9be87848f..94680718d 100644
--- a/java/src/com/android/inputmethod/latin/DebugSettings.java
+++ b/java/src/com/android/inputmethod/latin/DebugSettings.java
@@ -25,6 +25,7 @@ import android.os.Process;
 import android.preference.CheckBoxPreference;
 import android.preference.Preference;
 import android.preference.PreferenceFragment;
+import android.preference.PreferenceScreen;
 import android.util.Log;
 
 import com.android.inputmethod.keyboard.KeyboardSwitcher;
@@ -38,6 +39,7 @@ public final class DebugSettings extends PreferenceFragment
     public static final String PREF_FORCE_NON_DISTINCT_MULTITOUCH = "force_non_distinct_multitouch";
     public static final String PREF_USABILITY_STUDY_MODE = "usability_study_mode";
     public static final String PREF_STATISTICS_LOGGING = "enable_logging";
+    private static final String PREF_READ_EXTERNAL_DICTIONARY = "read_external_dictionary";
     private static final boolean SHOW_STATISTICS_LOGGING = false;
 
     private boolean mServiceNeedsRestart = false;
@@ -66,6 +68,19 @@ public final class DebugSettings extends PreferenceFragment
             }
         }
 
+        PreferenceScreen readExternalDictionary =
+                (PreferenceScreen) findPreference(PREF_READ_EXTERNAL_DICTIONARY);
+        if (null != readExternalDictionary) {
+            readExternalDictionary.setOnPreferenceClickListener(
+                    new Preference.OnPreferenceClickListener() {
+                        @Override
+                        public boolean onPreferenceClick(final Preference arg0) {
+                            // TODO: actually read the dictionary
+                            return true;
+                        }
+                    });
+        }
+
         mServiceNeedsRestart = false;
         mDebugMode = (CheckBoxPreference) findPreference(PREF_DEBUG_MODE);
         updateDebugMode();