diff options
Diffstat (limited to 'adservices/apk/java/com/android/adservices/ui/settings/viewmodels/MainViewModel.java')
-rw-r--r-- | adservices/apk/java/com/android/adservices/ui/settings/viewmodels/MainViewModel.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/adservices/apk/java/com/android/adservices/ui/settings/viewmodels/MainViewModel.java b/adservices/apk/java/com/android/adservices/ui/settings/viewmodels/MainViewModel.java index ac18104840..cc1cbccaac 100644 --- a/adservices/apk/java/com/android/adservices/ui/settings/viewmodels/MainViewModel.java +++ b/adservices/apk/java/com/android/adservices/ui/settings/viewmodels/MainViewModel.java @@ -27,6 +27,7 @@ import com.android.adservices.service.consent.ConsentManager; import com.android.adservices.ui.settings.fragments.AdServicesSettingsAppsFragment; import com.android.adservices.ui.settings.fragments.AdServicesSettingsMainFragment; import com.android.adservices.ui.settings.fragments.AdServicesSettingsTopicsFragment; +import com.android.settingslib.widget.MainSwitchBar; /** * View model for the main view of the AdServices Settings App. This view model is responsible @@ -104,16 +105,21 @@ public class MainViewModel extends AndroidViewModel { mEventTrigger.postValue(MainViewModelUiEvent.DISPLAY_APPS_FRAGMENT); } - /** Triggers {@link AdServicesSettingsTopicsFragment}. */ - public void consentSwitchClickHandler(Boolean newConsentValue) { - if (newConsentValue) { + /** + * Triggers opt out process for Privacy Sandbox. Also reverts the switch state, since + * confirmation dialog will handle switch change. + */ + public void consentSwitchClickHandler(MainSwitchBar mainSwitchBar) { + if (mainSwitchBar.isChecked()) { + mainSwitchBar.setChecked(false); mEventTrigger.postValue(MainViewModelUiEvent.SWITCH_ON_PRIVACY_SANDBOX_BETA); } else { + mainSwitchBar.setChecked(true); mEventTrigger.postValue(MainViewModelUiEvent.SWITCH_OFF_PRIVACY_SANDBOX_BETA); } } private boolean getConsentFromConsentManager() { - return mConsentManager.getConsent(getApplication().getPackageManager()).isGiven(); + return mConsentManager.getConsent().isGiven(); } } |