2023-09-20 05:33:02 +02:00
|
|
|
package app.revanced.patches.youtube.layout.seekbar
|
2023-05-27 09:52:03 +02:00
|
|
|
|
|
|
|
import app.revanced.patcher.data.ResourceContext
|
2023-09-20 05:33:02 +02:00
|
|
|
import app.revanced.patcher.patch.ResourcePatch
|
|
|
|
import app.revanced.patcher.patch.annotation.Patch
|
2024-01-27 02:34:01 +01:00
|
|
|
import app.revanced.patches.all.misc.resources.AddResourcesPatch
|
|
|
|
import app.revanced.patches.shared.misc.mapping.ResourceMappingPatch
|
|
|
|
import app.revanced.patches.shared.misc.settings.preference.BasePreference
|
|
|
|
import app.revanced.patches.shared.misc.settings.preference.PreferenceScreen
|
2023-09-20 05:33:02 +02:00
|
|
|
import app.revanced.patches.youtube.misc.settings.SettingsPatch
|
2023-05-27 09:52:03 +02:00
|
|
|
import java.io.Closeable
|
|
|
|
|
2024-01-27 02:34:01 +01:00
|
|
|
@Patch(dependencies = [SettingsPatch::class, ResourceMappingPatch::class, AddResourcesPatch::class])
|
2023-12-02 22:35:13 +01:00
|
|
|
internal object SeekbarPreferencesPatch : ResourcePatch(), Closeable {
|
2024-01-27 02:34:01 +01:00
|
|
|
private val seekbarPreferences = mutableSetOf<BasePreference>()
|
2023-05-27 09:52:03 +02:00
|
|
|
|
2023-09-20 05:33:02 +02:00
|
|
|
override fun execute(context: ResourceContext) {
|
2023-05-27 09:52:03 +02:00
|
|
|
// Nothing to do here. All work is done in close method.
|
|
|
|
}
|
|
|
|
|
|
|
|
override fun close() {
|
2024-01-27 02:34:01 +01:00
|
|
|
AddResourcesPatch(this::class)
|
|
|
|
|
2023-05-27 09:52:03 +02:00
|
|
|
SettingsPatch.PreferenceScreen.LAYOUT.addPreferences(
|
|
|
|
PreferenceScreen(
|
|
|
|
"revanced_seekbar_preference_screen",
|
2024-01-27 02:34:01 +01:00
|
|
|
preferences = seekbarPreferences,
|
2023-05-27 09:52:03 +02:00
|
|
|
)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
2023-09-20 05:33:02 +02:00
|
|
|
internal fun addPreferences(vararg preferencesToAdd: BasePreference) =
|
|
|
|
seekbarPreferences.addAll(preferencesToAdd)
|
2023-05-27 09:52:03 +02:00
|
|
|
}
|