LatinIME: Only enable gesture mode if gesture lib is available

 * Prevents keyboard FC when gapps is not loaded.

Change-Id: I0d48e1cd80534513205f61913c798b48573ea38c
diff --git a/java/src/com/android/inputmethod/latin/settings/Settings.java b/java/src/com/android/inputmethod/latin/settings/Settings.java
index 940f1bd..5c1b568 100644
--- a/java/src/com/android/inputmethod/latin/settings/Settings.java
+++ b/java/src/com/android/inputmethod/latin/settings/Settings.java
@@ -31,6 +31,7 @@
 import com.android.inputmethod.latin.R;
 import com.android.inputmethod.latin.common.StringUtils;
 import com.android.inputmethod.latin.utils.AdditionalSubtypeUtils;
+import com.android.inputmethod.latin.utils.JniUtils;
 import com.android.inputmethod.latin.utils.ResourceUtils;
 import com.android.inputmethod.latin.utils.RunInLocale;
 import com.android.inputmethod.latin.utils.StatsUtils;
@@ -230,6 +231,9 @@
     }
 
     public static boolean readFromBuildConfigIfGestureInputEnabled(final Resources res) {
+        if (!JniUtils.mHaveGestureLib) {
+            return false;
+        }
         return res.getBoolean(R.bool.config_gesture_input_enabled_by_build_config);
     }
 
diff --git a/java/src/com/android/inputmethod/latin/utils/JniUtils.java b/java/src/com/android/inputmethod/latin/utils/JniUtils.java
index 0e4f582..448a249 100644
--- a/java/src/com/android/inputmethod/latin/utils/JniUtils.java
+++ b/java/src/com/android/inputmethod/latin/utils/JniUtils.java
@@ -23,9 +23,11 @@
 public final class JniUtils {
     private static final String TAG = JniUtils.class.getSimpleName();
 
+    public static boolean mHaveGestureLib = false;
     static {
         try {
             System.loadLibrary(JniLibName.JNI_LIB_NAME2);
+            mHaveGestureLib = true;
         } catch (UnsatisfiedLinkError ue) {
             try {
                 System.loadLibrary(JniLibName.JNI_LIB_NAME);