manager: add eruda console (v3.4.3) to webui-next

This commit is contained in:
Rifat Azad
2025-07-12 23:18:11 +06:00
parent b567e9b275
commit 1baedd89b7
2 changed files with 35 additions and 2 deletions

File diff suppressed because one or more lines are too long

View File

@@ -25,6 +25,10 @@ class WebUIActivity : ComponentActivity() {
private var rootShell: Shell? = null
fun erudaConsole(context: android.content.Context): String {
return context.assets.open("eruda.min.js").bufferedReader().use { it.readText() }
}
override fun onCreate(savedInstanceState: Bundle?) {
// Enable edge to edge
@@ -46,7 +50,10 @@ class WebUIActivity : ComponentActivity() {
}
val prefs = getSharedPreferences("settings", MODE_PRIVATE)
WebView.setWebContentsDebuggingEnabled(prefs.getBoolean("enable_web_debugging", false))
val developerOptionsEnabled = prefs.getBoolean("enable_developer_options", false)
val enableWebDebugging = prefs.getBoolean("enable_web_debugging", false)
WebView.setWebContentsDebuggingEnabled(developerOptionsEnabled && enableWebDebugging)
val moduleDir = "/data/adb/modules/${moduleId}"
val webRoot = File("${moduleDir}/webroot")
@@ -84,7 +91,24 @@ class WebUIActivity : ComponentActivity() {
settings.allowFileAccess = false
webviewInterface = WebViewInterface(this@WebUIActivity, this, moduleDir)
addJavascriptInterface(webviewInterface, "ksu")
setWebViewClient(webViewClient)
setWebViewClient(object : WebViewClient() {
override fun shouldInterceptRequest(
view: WebView,
request: WebResourceRequest
): WebResourceResponse? {
return webViewAssetLoader.shouldInterceptRequest(request.url)
}
override fun onPageFinished(view: WebView?, url: String?) {
super.onPageFinished(view, url)
if (developerOptionsEnabled && enableWebDebugging) {
view?.evaluateJavascript(
erudaConsole(this@WebUIActivity),
null
)
view?.evaluateJavascript("eruda.init();", null)
}
}
})
loadUrl("https://mui.kernelsu.org/index.html")
}