Added suggestions for gestures.

Bug: 30986021
Test: manual + make RunSettingsRoboTests + adb shell am instrument -w
com.android.settings.tests.unit /android.support.test.runner.AndroidJUnitRunner
Change-Id: I7337a141cb21e5a1399aaca05ec1facd8629577b
Merged-In: I7aed110c81ca2fb6b90e2f359b4bb941c02bc1c3
This commit is contained in:
Daniel Sheng
2017-06-08 09:24:30 -07:00
parent c1cc9fefa8
commit f7c459c9e5
16 changed files with 501 additions and 48 deletions

View File

@@ -20,11 +20,24 @@ import android.content.ComponentName;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.os.UserHandle;
import android.provider.Settings;
import android.support.annotation.NonNull;
import android.util.Log;
import com.android.internal.hardware.AmbientDisplayConfiguration;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.Settings.AmbientDisplayPickupSuggestionActivity;
import com.android.settings.Settings.AmbientDisplaySuggestionActivity;
import com.android.settings.Settings.DoubleTapPowerSuggestionActivity;
import com.android.settings.Settings.DoubleTwistSuggestionActivity;
import com.android.settings.Settings.SwipeToNotificationSuggestionActivity;
import com.android.settings.core.instrumentation.MetricsFeatureProvider;
import com.android.settings.gestures.DoubleTapPowerPreferenceController;
import com.android.settings.gestures.DoubleTapScreenPreferenceController;
import com.android.settings.gestures.DoubleTwistPreferenceController;
import com.android.settings.gestures.PickupGesturePreferenceController;
import com.android.settings.gestures.SwipeToNotificationPreferenceController;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.support.NewDeviceIntroSuggestionActivity;
import com.android.settingslib.drawer.Tile;
@@ -41,6 +54,7 @@ public class SuggestionFeatureProviderImpl implements SuggestionFeatureProvider
private final SuggestionRanker mSuggestionRanker;
private final MetricsFeatureProvider mMetricsFeatureProvider;
private final AmbientDisplayConfiguration mAmbientDisplayConfig;
@Override
public boolean isSmartSuggestionEnabled(Context context) {
@@ -52,6 +66,21 @@ public class SuggestionFeatureProviderImpl implements SuggestionFeatureProvider
final String className = component.getClassName();
if (className.equals(NewDeviceIntroSuggestionActivity.class.getName())) {
return NewDeviceIntroSuggestionActivity.isSuggestionComplete(context);
} else if (className.equals(DoubleTapPowerSuggestionActivity.class.getName())) {
return DoubleTapPowerPreferenceController
.isSuggestionComplete(context, getSharedPrefs(context));
} else if (className.equals(DoubleTwistSuggestionActivity.class.getName())) {
return DoubleTwistPreferenceController
.isSuggestionComplete(context, getSharedPrefs(context));
} else if (className.equals(AmbientDisplaySuggestionActivity.class.getName())) {
return DoubleTapScreenPreferenceController
.isSuggestionComplete(context, getSharedPrefs(context));
} else if (className.equals(AmbientDisplayPickupSuggestionActivity.class.getName())) {
return PickupGesturePreferenceController
.isSuggestionComplete(context, getSharedPrefs(context));
} else if (className.equals(SwipeToNotificationSuggestionActivity.class.getName())) {
return SwipeToNotificationPreferenceController
.isSuggestionComplete(context, getSharedPrefs(context));
}
return false;
}
@@ -67,6 +96,7 @@ public class SuggestionFeatureProviderImpl implements SuggestionFeatureProvider
new SuggestionFeaturizer(new EventStore(appContext)));
mMetricsFeatureProvider = FeatureFactory.getFactory(appContext)
.getMetricsFeatureProvider();
mAmbientDisplayConfig = new AmbientDisplayConfiguration(appContext);
}
@Override