OSDN Git Service

Add gestures as inline actions for Phone Buddy
[android-x86/packages-apps-Settings.git] / src / com / android / settings / gestures / AssistGesturePreferenceController.java
index a3d4ec1..da25ce1 100644 (file)
@@ -17,6 +17,7 @@
 package com.android.settings.gestures;
 
 import android.content.Context;
+import android.content.Intent;
 import android.provider.Settings;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.PreferenceScreen;
@@ -25,12 +26,18 @@ import android.support.v7.preference.TwoStatePreference;
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.settings.R;
 import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.search.DatabaseIndexingUtils;
+import com.android.settings.search.InlineSwitchPayload;
+import com.android.settings.search.ResultPayload;
 import com.android.settingslib.core.lifecycle.Lifecycle;
 import com.android.settingslib.core.lifecycle.events.OnResume;
 
 public class AssistGesturePreferenceController extends GesturePreferenceController
         implements OnResume {
 
+    private final int ON = 1;
+    private final int OFF = 0;
+
     private static final String PREF_KEY_VIDEO = "gesture_assist_video";
     private final String mAssistGesturePrefKey;
 
@@ -136,7 +143,7 @@ public class AssistGesturePreferenceController extends GesturePreferenceControll
     public boolean onPreferenceChange(Preference preference, Object newValue) {
         final boolean enabled = (boolean) newValue;
         Settings.Secure.putInt(mContext.getContentResolver(),
-                Settings.Secure.ASSIST_GESTURE_ENABLED, enabled ? 1 : 0);
+                Settings.Secure.ASSIST_GESTURE_ENABLED, enabled ? ON : OFF);
         updateState(preference);
         return true;
     }
@@ -157,4 +164,14 @@ public class AssistGesturePreferenceController extends GesturePreferenceControll
                 Settings.Secure.ASSIST_GESTURE_ENABLED, 1);
         return assistGestureEnabled != 0;
     }
+
+    @Override
+    public ResultPayload getResultPayload() {
+        final Intent intent = DatabaseIndexingUtils.buildSubsettingIntent(mContext,
+                AssistGestureSettings.class.getName(), mAssistGesturePrefKey,
+                mContext.getString(R.string.display_settings));
+
+        return new InlineSwitchPayload(Settings.Secure.ASSIST_GESTURE_ENABLED,
+                ResultPayload.SettingsSource.SECURE, ON, intent, isAvailable());
+    }
 }