Loading AndroidManifest.xml +32 −0 Original line number Diff line number Diff line Loading @@ -1539,6 +1539,22 @@ android:windowSoftInputMode="stateHidden|adjustResize" android:theme="@style/Theme.ConfirmDeviceCredentials"/> <activity android:name=".Settings$FingerprintSuggestionActivity" android:label="@string/security_settings_fingerprint_preference_title" android:icon="@drawable/ic_fingerprint"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="com.android.settings.suggested.category.SETTINGS_ONLY" /> </intent-filter> <meta-data android:name="com.android.settings.dismiss" android:value="10,30" /> <meta-data android:name="com.android.settings.require_feature" android:value="android.hardware.fingerprint" /> <meta-data android:name="com.android.settings.title" android:resource="@string/suggestion_additional_fingerprints" /> </activity> <activity android:name=".fingerprint.FingerprintSettings" android:exported="false"/> <activity android:name=".fingerprint.FingerprintEnrollFindSensor" android:exported="false"/> <activity android:name=".fingerprint.FingerprintEnrollEnrolling" android:exported="false"/> Loading Loading @@ -2666,6 +2682,22 @@ android:value="true" /> </activity> <activity android:name="Settings$WifiCallingSuggestionActivity" android:label="@string/wifi_calling_settings_title" android:icon="@drawable/ic_settings_wireless" android:taskAffinity=""> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="com.android.settings.suggested.category.SETTINGS_ONLY" /> </intent-filter> <meta-data android:name="com.android.settings.FRAGMENT_CLASS" android:value="com.android.settings.WifiCallingSettings" /> <meta-data android:name="com.android.settings.dismiss" android:value="10" /> <meta-data android:name="com.android.settings.title" android:resource="@string/wifi_calling_suggestion_title" /> </activity> <provider android:name=".search.SettingsSearchIndexablesProvider" android:authorities="com.android.settings" Loading res/values/strings.xml +5 −0 Original line number Diff line number Diff line Loading @@ -1899,6 +1899,8 @@ <!-- Wireless networks, item title to go into the WFC settings [CHAR LIMIT=30] --> <string name="wifi_calling_settings_title">Wi-Fi calling</string> <!-- Title of suggestion to turn on wifi calling [CHAR LIMIT=30] --> <string name="wifi_calling_suggestion_title">Enable Wi-Fi Calling</string> <!-- WFC mode [CHAR LIMIT=30] --> <string name="wifi_calling_mode_title">Calling preference</string> <!-- WFC mode dialog [CHAR LIMIT=30] --> Loading Loading @@ -7016,4 +7018,7 @@ <!-- No default home set summary [CHAR LIMIT=NONE] --> <string name="no_default_home">No default Home</string> <!-- Title for suggestion adding more fingerprints [CHAR LIMIT=30] --> <string name="suggestion_additional_fingerprints">Additional Fingerprints</string> </resources> src/com/android/settings/Settings.java +4 −1 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.settings; import com.android.settings.applications.AppOpsSummary; import com.android.settings.fingerprint.FingerprintSettings; /** * Top-level Settings activity Loading Loading @@ -103,7 +104,6 @@ public class Settings extends SettingsActivity { public static class ZenModeSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModePrioritySettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeAutomationSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeAutomationSuggestionActivity extends SettingsActivity { /* empty */ } public static class ZenModeScheduleRuleSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeEventRuleSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeExternalRuleSettingsActivity extends SettingsActivity { /* empty */ } Loading @@ -125,7 +125,10 @@ public class Settings extends SettingsActivity { public static class AppWriteSettingsActivity extends SettingsActivity { /* empty */ } public static class ManageDefaultAppsActivity extends SettingsActivity { /* empty */ } public static class WifiCallingSuggestionActivity extends SettingsActivity { /* empty */ } public static class ZenModeAutomationSuggestionActivity extends SettingsActivity { /* empty */ } public static class WallpaperSuggestionActivity extends SettingsActivity { /* empty */ } public static class FingerprintSuggestionActivity extends FingerprintSettings { /* empty */ } // Categories. public static class WirelessSettings extends SettingsActivity { /* empty */ } Loading src/com/android/settings/dashboard/SuggestionsChecks.java +21 −0 Original line number Diff line number Diff line Loading @@ -20,11 +20,15 @@ import android.app.IWallpaperManager.Stub; import android.app.IWallpaperManagerCallback; import android.app.NotificationManager; import android.content.Context; import android.hardware.fingerprint.FingerprintManager; import android.os.Bundle; import android.os.IBinder; import android.os.RemoteException; import android.os.ServiceManager; import com.android.ims.ImsManager; import com.android.settings.Settings.FingerprintSuggestionActivity; import com.android.settings.Settings.WallpaperSuggestionActivity; import com.android.settings.Settings.WifiCallingSuggestionActivity; import com.android.settings.Settings.ZenModeAutomationSuggestionActivity; import com.android.settingslib.drawer.Tile; Loading @@ -47,10 +51,27 @@ public class SuggestionsChecks { return hasEnabledZenAutoRules(); } else if (className.equals(WallpaperSuggestionActivity.class.getName())) { return hasWallpaperSet(); } else if (className.equals(WifiCallingSuggestionActivity.class.getName())) { return isWifiCallingUnavailableOrEnabled(); } else if (className.equals(FingerprintSuggestionActivity.class.getName())) { return isNotSingleFingerprintEnrolled(); } return false; } private boolean isNotSingleFingerprintEnrolled() { FingerprintManager manager = mContext.getSystemService(FingerprintManager.class); return manager == null || manager.getEnrolledFingerprints().size() != 1; } public boolean isWifiCallingUnavailableOrEnabled() { if (!ImsManager.isWfcEnabledByPlatform(mContext)) { return true; } return ImsManager.isWfcEnabledByUser(mContext) && ImsManager.isNonTtyOrTtyOnVolteEnabled(mContext); } private boolean hasEnabledZenAutoRules() { List<AutomaticZenRule> zenRules = NotificationManager.from(mContext).getAutomaticZenRules(); final int N = zenRules.size(); Loading Loading
AndroidManifest.xml +32 −0 Original line number Diff line number Diff line Loading @@ -1539,6 +1539,22 @@ android:windowSoftInputMode="stateHidden|adjustResize" android:theme="@style/Theme.ConfirmDeviceCredentials"/> <activity android:name=".Settings$FingerprintSuggestionActivity" android:label="@string/security_settings_fingerprint_preference_title" android:icon="@drawable/ic_fingerprint"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="com.android.settings.suggested.category.SETTINGS_ONLY" /> </intent-filter> <meta-data android:name="com.android.settings.dismiss" android:value="10,30" /> <meta-data android:name="com.android.settings.require_feature" android:value="android.hardware.fingerprint" /> <meta-data android:name="com.android.settings.title" android:resource="@string/suggestion_additional_fingerprints" /> </activity> <activity android:name=".fingerprint.FingerprintSettings" android:exported="false"/> <activity android:name=".fingerprint.FingerprintEnrollFindSensor" android:exported="false"/> <activity android:name=".fingerprint.FingerprintEnrollEnrolling" android:exported="false"/> Loading Loading @@ -2666,6 +2682,22 @@ android:value="true" /> </activity> <activity android:name="Settings$WifiCallingSuggestionActivity" android:label="@string/wifi_calling_settings_title" android:icon="@drawable/ic_settings_wireless" android:taskAffinity=""> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="com.android.settings.suggested.category.SETTINGS_ONLY" /> </intent-filter> <meta-data android:name="com.android.settings.FRAGMENT_CLASS" android:value="com.android.settings.WifiCallingSettings" /> <meta-data android:name="com.android.settings.dismiss" android:value="10" /> <meta-data android:name="com.android.settings.title" android:resource="@string/wifi_calling_suggestion_title" /> </activity> <provider android:name=".search.SettingsSearchIndexablesProvider" android:authorities="com.android.settings" Loading
res/values/strings.xml +5 −0 Original line number Diff line number Diff line Loading @@ -1899,6 +1899,8 @@ <!-- Wireless networks, item title to go into the WFC settings [CHAR LIMIT=30] --> <string name="wifi_calling_settings_title">Wi-Fi calling</string> <!-- Title of suggestion to turn on wifi calling [CHAR LIMIT=30] --> <string name="wifi_calling_suggestion_title">Enable Wi-Fi Calling</string> <!-- WFC mode [CHAR LIMIT=30] --> <string name="wifi_calling_mode_title">Calling preference</string> <!-- WFC mode dialog [CHAR LIMIT=30] --> Loading Loading @@ -7016,4 +7018,7 @@ <!-- No default home set summary [CHAR LIMIT=NONE] --> <string name="no_default_home">No default Home</string> <!-- Title for suggestion adding more fingerprints [CHAR LIMIT=30] --> <string name="suggestion_additional_fingerprints">Additional Fingerprints</string> </resources>
src/com/android/settings/Settings.java +4 −1 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.settings; import com.android.settings.applications.AppOpsSummary; import com.android.settings.fingerprint.FingerprintSettings; /** * Top-level Settings activity Loading Loading @@ -103,7 +104,6 @@ public class Settings extends SettingsActivity { public static class ZenModeSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModePrioritySettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeAutomationSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeAutomationSuggestionActivity extends SettingsActivity { /* empty */ } public static class ZenModeScheduleRuleSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeEventRuleSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeExternalRuleSettingsActivity extends SettingsActivity { /* empty */ } Loading @@ -125,7 +125,10 @@ public class Settings extends SettingsActivity { public static class AppWriteSettingsActivity extends SettingsActivity { /* empty */ } public static class ManageDefaultAppsActivity extends SettingsActivity { /* empty */ } public static class WifiCallingSuggestionActivity extends SettingsActivity { /* empty */ } public static class ZenModeAutomationSuggestionActivity extends SettingsActivity { /* empty */ } public static class WallpaperSuggestionActivity extends SettingsActivity { /* empty */ } public static class FingerprintSuggestionActivity extends FingerprintSettings { /* empty */ } // Categories. public static class WirelessSettings extends SettingsActivity { /* empty */ } Loading
src/com/android/settings/dashboard/SuggestionsChecks.java +21 −0 Original line number Diff line number Diff line Loading @@ -20,11 +20,15 @@ import android.app.IWallpaperManager.Stub; import android.app.IWallpaperManagerCallback; import android.app.NotificationManager; import android.content.Context; import android.hardware.fingerprint.FingerprintManager; import android.os.Bundle; import android.os.IBinder; import android.os.RemoteException; import android.os.ServiceManager; import com.android.ims.ImsManager; import com.android.settings.Settings.FingerprintSuggestionActivity; import com.android.settings.Settings.WallpaperSuggestionActivity; import com.android.settings.Settings.WifiCallingSuggestionActivity; import com.android.settings.Settings.ZenModeAutomationSuggestionActivity; import com.android.settingslib.drawer.Tile; Loading @@ -47,10 +51,27 @@ public class SuggestionsChecks { return hasEnabledZenAutoRules(); } else if (className.equals(WallpaperSuggestionActivity.class.getName())) { return hasWallpaperSet(); } else if (className.equals(WifiCallingSuggestionActivity.class.getName())) { return isWifiCallingUnavailableOrEnabled(); } else if (className.equals(FingerprintSuggestionActivity.class.getName())) { return isNotSingleFingerprintEnrolled(); } return false; } private boolean isNotSingleFingerprintEnrolled() { FingerprintManager manager = mContext.getSystemService(FingerprintManager.class); return manager == null || manager.getEnrolledFingerprints().size() != 1; } public boolean isWifiCallingUnavailableOrEnabled() { if (!ImsManager.isWfcEnabledByPlatform(mContext)) { return true; } return ImsManager.isWfcEnabledByUser(mContext) && ImsManager.isNonTtyOrTtyOnVolteEnabled(mContext); } private boolean hasEnabledZenAutoRules() { List<AutomaticZenRule> zenRules = NotificationManager.from(mContext).getAutomaticZenRules(); final int N = zenRules.size(); Loading