From f2fc2cc24af9900db8ad1cdf59cedf4ad34f6a26 Mon Sep 17 00:00:00 2001 From: Stypox Date: Sat, 16 Apr 2022 18:57:02 +0200 Subject: [PATCH] Check whether to enable New streams settings in onCreate to prevent flickering --- .../newpipe/settings/NotificationsSettingsFragment.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/schabi/newpipe/settings/NotificationsSettingsFragment.kt b/app/src/main/java/org/schabi/newpipe/settings/NotificationsSettingsFragment.kt index e823c2fcf..14f74088c 100644 --- a/app/src/main/java/org/schabi/newpipe/settings/NotificationsSettingsFragment.kt +++ b/app/src/main/java/org/schabi/newpipe/settings/NotificationsSettingsFragment.kt @@ -26,6 +26,10 @@ class NotificationsSettingsFragment : BasePreferenceFragment(), OnSharedPreferen override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { addPreferencesFromResource(R.xml.notifications_settings) + + // main check is done in onResume, but also do it here to prevent flickering + preferenceScreen.isEnabled = + NotificationHelper.areNotificationsEnabledOnDevice(requireContext()) } override fun onStart() { @@ -64,7 +68,7 @@ class NotificationsSettingsFragment : BasePreferenceFragment(), OnSharedPreferen // If they are disabled, show a snackbar informing the user about that // while allowing them to open the device's app settings. val enabled = NotificationHelper.areNotificationsEnabledOnDevice(requireContext()) - preferenceScreen.isEnabled = enabled + preferenceScreen.isEnabled = enabled // it is disabled by default, see the xml if (!enabled) { if (notificationWarningSnackbar == null) { notificationWarningSnackbar = Snackbar.make(