diff options
author | twyen <twyen@google.com> | 2017-11-13 14:57:58 -0800 |
---|---|---|
committer | zachh <zachh@google.com> | 2017-11-18 04:21:45 +0000 |
commit | a1c046f99a353985f41d2b0d9cecf31d53364ee6 (patch) | |
tree | d79faaba4496b80182d6d2a17efd96e4880c3a25 /java/com/android/dialer/simulator | |
parent | bee76bf00cfa677fc85c643b53af0cfebee3e2e1 (diff) |
Implement preferred SIM
Before prompting the user to select the SIM, CallingAccountSelector will lookup the fallback preferred SIM database to see if a preferred SIM is already set and bypass the selection. If the number is in contacts the user will also have the option to store the selected SIM as preferred.
Bug: 64213352
Test: CallingAccountSelectorTest
PiperOrigin-RevId: 175592732
Change-Id: I6a5a8ad8772eccfb4a119c529dcd3945b9dc0b1e
Diffstat (limited to 'java/com/android/dialer/simulator')
-rw-r--r-- | java/com/android/dialer/simulator/impl/SimulatorMainMenu.java | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/java/com/android/dialer/simulator/impl/SimulatorMainMenu.java b/java/com/android/dialer/simulator/impl/SimulatorMainMenu.java index f4b1916c5..e2082105b 100644 --- a/java/com/android/dialer/simulator/impl/SimulatorMainMenu.java +++ b/java/com/android/dialer/simulator/impl/SimulatorMainMenu.java @@ -29,6 +29,7 @@ import com.android.dialer.databasepopulator.ContactsPopulator; import com.android.dialer.databasepopulator.VoicemailPopulator; import com.android.dialer.enrichedcall.simulator.EnrichedCallSimulatorActivity; import com.android.dialer.persistentlog.PersistentLogger; +import com.android.dialer.preferredsim.PreferredSimFallbackContract; /** Implements the top level simulator menu. */ final class SimulatorMainMenu { @@ -40,6 +41,7 @@ final class SimulatorMainMenu { .addItem("Notifications", SimulatorNotifications.getActionProvider(context)) .addItem("Populate database", () -> populateDatabase(context)) .addItem("Clean database", () -> cleanDatabase(context)) + .addItem("clear preferred SIM", () -> clearPreferredSim(context)) .addItem("Sync voicemail", () -> syncVoicemail(context)) .addItem("Share persistent log", () -> sharePersistentLog(context)) .addItem( @@ -63,6 +65,14 @@ final class SimulatorMainMenu { .executeSerial(context); } + private static void clearPreferredSim(Context context) { + DialerExecutorComponent.get(context) + .dialerExecutorFactory() + .createNonUiTaskBuilder(new ClearPreferredSimWorker()) + .build() + .executeSerial(context); + } + private static void syncVoicemail(@NonNull Context context) { Intent intent = new Intent(VoicemailContract.ACTION_SYNC_VOICEMAIL); context.sendBroadcast(intent); @@ -109,6 +119,15 @@ final class SimulatorMainMenu { } } + private static class ClearPreferredSimWorker implements Worker<Context, Void> { + @Nullable + @Override + public Void doInBackground(Context context) { + context.getContentResolver().delete(PreferredSimFallbackContract.CONTENT_URI, null, null); + return null; + } + } + private static class ShareLogWorker implements Worker<Void, String> { @Nullable @Override |