mirror of
https://github.com/TeamNewPipe/NewPipe
synced 2026-03-19 14:19:45 +00:00
Merge pull request #12973 from dustdfg/require_preference
Replace findPreference(getString(resId) with its null safe shortcut
This commit is contained in:
@@ -98,10 +98,9 @@ public class BackupRestoreSettingsFragment extends BasePreferenceFragment {
|
||||
return true;
|
||||
});
|
||||
|
||||
final Preference resetSettings = findPreference(getString(R.string.reset_settings));
|
||||
final Preference resetSettings = requirePreference(R.string.reset_settings);
|
||||
// Resets all settings by deleting shared preference and restarting the app
|
||||
// A dialogue will pop up to confirm if user intends to reset all settings
|
||||
assert resetSettings != null;
|
||||
resetSettings.setOnPreferenceClickListener(preference -> {
|
||||
// Show Alert Dialogue
|
||||
final AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
|
||||
|
||||
@@ -48,8 +48,8 @@ public abstract class BasePreferenceFragment extends PreferenceFragmentCompat {
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public final Preference requirePreference(@StringRes final int resId) {
|
||||
final Preference preference = findPreference(getString(resId));
|
||||
public final <T extends Preference> T requirePreference(@StringRes final int resId) {
|
||||
final T preference = findPreference(getString(resId));
|
||||
Objects.requireNonNull(preference);
|
||||
return preference;
|
||||
}
|
||||
|
||||
@@ -22,27 +22,20 @@ public class DebugSettingsFragment extends BasePreferenceFragment {
|
||||
addPreferencesFromResourceRegistry();
|
||||
|
||||
final Preference allowHeapDumpingPreference =
|
||||
findPreference(getString(R.string.allow_heap_dumping_key));
|
||||
requirePreference(R.string.allow_heap_dumping_key);
|
||||
final Preference showMemoryLeaksPreference =
|
||||
findPreference(getString(R.string.show_memory_leaks_key));
|
||||
requirePreference(R.string.show_memory_leaks_key);
|
||||
final Preference showImageIndicatorsPreference =
|
||||
findPreference(getString(R.string.show_image_indicators_key));
|
||||
requirePreference(R.string.show_image_indicators_key);
|
||||
final Preference checkNewStreamsPreference =
|
||||
findPreference(getString(R.string.check_new_streams_key));
|
||||
requirePreference(R.string.check_new_streams_key);
|
||||
final Preference crashTheAppPreference =
|
||||
findPreference(getString(R.string.crash_the_app_key));
|
||||
requirePreference(R.string.crash_the_app_key);
|
||||
final Preference showErrorSnackbarPreference =
|
||||
findPreference(getString(R.string.show_error_snackbar_key));
|
||||
requirePreference(R.string.show_error_snackbar_key);
|
||||
final Preference createErrorNotificationPreference =
|
||||
findPreference(getString(R.string.create_error_notification_key));
|
||||
requirePreference(R.string.create_error_notification_key);
|
||||
|
||||
assert allowHeapDumpingPreference != null;
|
||||
assert showMemoryLeaksPreference != null;
|
||||
assert showImageIndicatorsPreference != null;
|
||||
assert checkNewStreamsPreference != null;
|
||||
assert crashTheAppPreference != null;
|
||||
assert showErrorSnackbarPreference != null;
|
||||
assert createErrorNotificationPreference != null;
|
||||
|
||||
final Optional<DebugSettingsBVDLeakCanaryAPI> optBVLeakCanary = getBVDLeakCanary();
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ public class MainSettingsFragment extends BasePreferenceFragment {
|
||||
// Check if the app is updatable
|
||||
if (!ReleaseVersionUtil.INSTANCE.isReleaseApk()) {
|
||||
getPreferenceScreen().removePreference(
|
||||
findPreference(getString(R.string.update_pref_screen_key)));
|
||||
requirePreference(R.string.update_pref_screen_key));
|
||||
|
||||
defaultPreferences.edit().putBoolean(getString(R.string.update_app_key), false).apply();
|
||||
}
|
||||
@@ -33,7 +33,7 @@ public class MainSettingsFragment extends BasePreferenceFragment {
|
||||
// Hide debug preferences in RELEASE build variant
|
||||
if (!DEBUG) {
|
||||
getPreferenceScreen().removePreference(
|
||||
findPreference(getString(R.string.debug_pref_screen_key)));
|
||||
requirePreference(R.string.debug_pref_screen_key));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -29,8 +29,7 @@ class NotificationsSettingsFragment : BasePreferenceFragment(), OnSharedPreferen
|
||||
|
||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||
addPreferencesFromResource(R.xml.notifications_settings)
|
||||
streamsNotificationsPreference =
|
||||
findPreference(getString(R.string.enable_streams_notifications))
|
||||
streamsNotificationsPreference = requirePreference(R.string.enable_streams_notifications)
|
||||
|
||||
// main check is done in onResume, but also do it here to prevent flickering
|
||||
updateEnabledState(NotificationHelper.areNotificationsEnabledOnDevice(requireContext()))
|
||||
@@ -125,8 +124,8 @@ class NotificationsSettingsFragment : BasePreferenceFragment(), OnSharedPreferen
|
||||
|
||||
private fun updateSubscriptions(subscriptions: List<SubscriptionEntity>) {
|
||||
val notified = subscriptions.count { it.notificationMode != NotificationMode.DISABLED }
|
||||
val preference = findPreference<Preference>(getString(R.string.streams_notifications_channels_key))
|
||||
preference?.apply { summary = "$notified/${subscriptions.size}" }
|
||||
val preference = requirePreference<Preference>(R.string.streams_notifications_channels_key)
|
||||
preference.summary = "$notified/${subscriptions.size}"
|
||||
}
|
||||
|
||||
private fun onError(e: Throwable) {
|
||||
|
||||
@@ -34,9 +34,9 @@ public class UpdateSettingsFragment extends BasePreferenceFragment {
|
||||
public void onCreatePreferences(final Bundle savedInstanceState, final String rootKey) {
|
||||
addPreferencesFromResourceRegistry();
|
||||
|
||||
findPreference(getString(R.string.update_app_key))
|
||||
requirePreference(R.string.update_app_key)
|
||||
.setOnPreferenceChangeListener(updatePreferenceChange);
|
||||
findPreference(getString(R.string.manual_update_key))
|
||||
requirePreference(R.string.manual_update_key)
|
||||
.setOnPreferenceClickListener(manualUpdateClick);
|
||||
}
|
||||
|
||||
|
||||
@@ -90,12 +90,12 @@ public class VideoAudioSettingsFragment extends BasePreferenceFragment {
|
||||
showHigherResolutions);
|
||||
|
||||
// get resolution preferences
|
||||
final ListPreference defaultResolution = findPreference(
|
||||
getString(R.string.default_resolution_key));
|
||||
final ListPreference defaultPopupResolution = findPreference(
|
||||
getString(R.string.default_popup_resolution_key));
|
||||
final ListPreference mobileDataResolution = findPreference(
|
||||
getString(R.string.limit_mobile_data_usage_key));
|
||||
final ListPreference defaultResolution = requirePreference(
|
||||
R.string.default_resolution_key);
|
||||
final ListPreference defaultPopupResolution = requirePreference(
|
||||
R.string.default_popup_resolution_key);
|
||||
final ListPreference mobileDataResolution = requirePreference(
|
||||
R.string.limit_mobile_data_usage_key);
|
||||
|
||||
// update resolution preferences with new resolutions, entries & values for each
|
||||
defaultResolution.setEntries(resolutionListDescriptions.toArray(new String[0]));
|
||||
@@ -161,8 +161,7 @@ public class VideoAudioSettingsFragment extends BasePreferenceFragment {
|
||||
}
|
||||
}
|
||||
|
||||
final ListPreference durations = findPreference(
|
||||
getString(R.string.seek_duration_key));
|
||||
final ListPreference durations = requirePreference(R.string.seek_duration_key);
|
||||
durations.setEntryValues(displayedDurationValues.toArray(new CharSequence[0]));
|
||||
durations.setEntries(displayedDescriptionValues.toArray(new CharSequence[0]));
|
||||
final int selectedDuration = Integer.parseInt(durations.getValue());
|
||||
|
||||
Reference in New Issue
Block a user