Merge "Add SuggestionFeatureProvider interface."

This commit is contained in:
Stefano Tommasini
2017-01-20 01:02:05 +00:00
committed by Android (Google) Code Review
3 changed files with 24 additions and 0 deletions

View File

@@ -26,4 +26,10 @@ public interface SuggestionFeatureProvider {
*/ */
boolean isSmartSuggestionEnabled(Context context); boolean isSmartSuggestionEnabled(Context context);
/** Return true if className is the name of a class of one of your newly added suggestion. */
boolean isPresent(String className);
/** Return true if the suggestion has already been completed and does not need to be shown */
boolean isSuggestionCompleted(Context context);
} }

View File

@@ -25,4 +25,14 @@ public class SuggestionFeatureProviderImpl implements SuggestionFeatureProvider
return false; return false;
} }
@Override
public boolean isPresent(String className) {
return false;
}
@Override
public boolean isSuggestionCompleted(Context context) {
return false;
}
} }

View File

@@ -37,6 +37,7 @@ import com.android.settings.Settings.WifiCallingSuggestionActivity;
import com.android.settings.Settings.ZenModeAutomationSuggestionActivity; import com.android.settings.Settings.ZenModeAutomationSuggestionActivity;
import com.android.settings.Utils; import com.android.settings.Utils;
import com.android.settings.WallpaperSuggestionActivity; import com.android.settings.WallpaperSuggestionActivity;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.drawer.Tile; import com.android.settingslib.drawer.Tile;
import java.util.Collection; import java.util.Collection;
@@ -67,6 +68,13 @@ public class SuggestionsChecks {
} else if (className.equals(FingerprintEnrollSuggestionActivity.class.getName())) { } else if (className.equals(FingerprintEnrollSuggestionActivity.class.getName())) {
return isDeviceSecured() || !isFingerprintEnabled(); return isDeviceSecured() || !isFingerprintEnabled();
} }
SuggestionFeatureProvider provider =
FeatureFactory.getFactory(mContext).getSuggestionFeatureProvider();
if (provider != null && provider.isPresent(className)) {
return provider.isSuggestionCompleted(mContext);
}
return false; return false;
} }