diff options
author | Martin Fietz <martin.fietz@gmail.com> | 2017-10-17 22:55:30 +0200 |
---|---|---|
committer | Martin Fietz <martin.fietz@gmail.com> | 2017-10-17 22:55:30 +0200 |
commit | e884e989c781a2527b737ff30f0fcadd23e791f5 (patch) | |
tree | 0bcfc92171c2b52be85e9d38641fde3b8662aee4 /app/src/play/java/de/danoeh/antennapod/preferences | |
parent | b47dc10b2a4ef46bf5e61dcd0c4640265b033721 (diff) | |
parent | 014e34e912cfcd9fae84643a8ab2a61872c18559 (diff) | |
download | AntennaPod-e884e989c781a2527b737ff30f0fcadd23e791f5.zip |
Merge branch 'develop'
Diffstat (limited to 'app/src/play/java/de/danoeh/antennapod/preferences')
-rw-r--r-- | app/src/play/java/de/danoeh/antennapod/preferences/PreferenceControllerFlavorHelper.java | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/app/src/play/java/de/danoeh/antennapod/preferences/PreferenceControllerFlavorHelper.java b/app/src/play/java/de/danoeh/antennapod/preferences/PreferenceControllerFlavorHelper.java new file mode 100644 index 000000000..b9b4e891f --- /dev/null +++ b/app/src/play/java/de/danoeh/antennapod/preferences/PreferenceControllerFlavorHelper.java @@ -0,0 +1,31 @@ +package de.danoeh.antennapod.preferences; + +import com.google.android.gms.common.ConnectionResult; +import com.google.android.gms.common.GoogleApiAvailability; + +import de.danoeh.antennapod.core.preferences.UserPreferences; + +/** + * Implements functions from PreferenceController that are flavor dependent. + */ +public class PreferenceControllerFlavorHelper { + + static void setupFlavoredUI(PreferenceController.PreferenceUI ui) { + //checks whether Google Play Services is installed on the device (condition necessary for Cast support) + ui.findPreference(UserPreferences.PREF_CAST_ENABLED).setOnPreferenceChangeListener((preference, o) -> { + if (o instanceof Boolean && ((Boolean) o)) { + final int googlePlayServicesCheck = GoogleApiAvailability.getInstance() + .isGooglePlayServicesAvailable(ui.getActivity()); + if (googlePlayServicesCheck == ConnectionResult.SUCCESS) { + return true; + } else { + GoogleApiAvailability.getInstance() + .getErrorDialog(ui.getActivity(), googlePlayServicesCheck, 0) + .show(); + return false; + } + } + return true; + }); + } +} |