@@ -2,6 +2,7 @@ package io.github.chsbuffer.revancedxposed.youtube.misc
22
33import android.app.Activity
44import android.app.AlertDialog
5+ import android.content.Context
56import android.content.res.Resources
67import android.webkit.WebView
78import app.revanced.extension.shared.Logger
@@ -80,10 +81,10 @@ fun YoutubeHook.SettingsHook() {
8081 }.hookMethod(
8182 ScopedHook (inflate.toMethod()) {
8283 var handleWebView = false
83- after {
84+ before {
8485 val preferencesName = app.resources.getResourceName(outerParam.args[0 ] as Int )
8586 Logger .printDebug { " addPreferencesFromResource $preferencesName " }
86- if (! preferencesName.contains(" settings_fragment" )) return @after
87+ if (! preferencesName.contains(" settings_fragment" )) return @before
8788 if (! handleWebView) {
8889 // workaround "AssetManager.addAssetPath gets Invalid When WebView is created":
8990 // let WebView replace the AssetManager first then addModuleAssets
@@ -92,9 +93,12 @@ fun YoutubeHook.SettingsHook() {
9293 handleWebView = true
9394 }
9495 app.addModuleAssets()
96+ (param.args[2 ] as Context ).addModuleAssets()
97+ val xml =
98+ if (preferencesName.contains(" settings_fragment_cairo" )) R .xml.yt_revanced_settings_cairo else R .xml.yt_revanced_settings
9599 XposedBridge .invokeOriginalMethod(
96100 param.method, param.thisObject, param.args.clone().apply {
97- this [0 ] = app.resources.getXml(R . xml.yt_revanced_settings )
101+ this [0 ] = app.resources.getXml(xml)
98102 })
99103 }
100104 })
0 commit comments