2024-01-01 16:33:20 +01:00
|
|
|
package app.revanced.integrations.youtube.settings.preference;
|
|
|
|
|
2024-03-08 06:10:06 +01:00
|
|
|
import android.os.Build;
|
2024-01-01 16:33:20 +01:00
|
|
|
import android.preference.ListPreference;
|
|
|
|
import android.preference.Preference;
|
2024-03-08 06:10:06 +01:00
|
|
|
import android.preference.PreferenceGroup;
|
|
|
|
|
|
|
|
import androidx.annotation.RequiresApi;
|
|
|
|
|
|
|
|
import app.revanced.integrations.shared.Logger;
|
2024-01-01 16:33:20 +01:00
|
|
|
import app.revanced.integrations.shared.settings.preference.AbstractPreferenceFragment;
|
2024-03-08 06:10:06 +01:00
|
|
|
import app.revanced.integrations.youtube.patches.DownloadsPatch;
|
2024-01-01 16:33:20 +01:00
|
|
|
import app.revanced.integrations.youtube.patches.playback.speed.CustomPlaybackSpeedPatch;
|
|
|
|
import app.revanced.integrations.youtube.settings.Settings;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Preference fragment for ReVanced settings.
|
|
|
|
*
|
|
|
|
* @noinspection deprecation
|
|
|
|
*/
|
|
|
|
public class ReVancedPreferenceFragment extends AbstractPreferenceFragment {
|
2024-03-08 06:10:06 +01:00
|
|
|
|
|
|
|
@RequiresApi(api = Build.VERSION_CODES.O)
|
2024-01-01 16:33:20 +01:00
|
|
|
@Override
|
|
|
|
protected void initialize() {
|
2024-01-06 18:28:41 +01:00
|
|
|
super.initialize();
|
|
|
|
|
2024-03-08 06:10:06 +01:00
|
|
|
try {
|
|
|
|
// If the preference was included, then initialize it based on the available playback speed.
|
|
|
|
Preference defaultSpeedPreference = findPreference(Settings.PLAYBACK_SPEED_DEFAULT.key);
|
|
|
|
if (defaultSpeedPreference instanceof ListPreference) {
|
|
|
|
CustomPlaybackSpeedPatch.initializeListPreference((ListPreference) defaultSpeedPreference);
|
|
|
|
}
|
|
|
|
} catch (Exception ex) {
|
|
|
|
Logger.printException(() -> "initialize failure", ex);
|
2024-01-01 16:33:20 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|