Auto-select Haiku 4.5 model on page load

This commit is contained in:
Alex Abudaev 2026-06-13 17:17:53 +08:00
parent 6b940730f4
commit daa6a8ee59

View file

@ -152,6 +152,7 @@ class MainActivity : AppCompatActivity() {
override fun onPageFinished(view: WebView?, url: String?) { override fun onPageFinished(view: WebView?, url: String?) {
view?.postDelayed({ tryFocusInput(view) }, 2000) view?.postDelayed({ tryFocusInput(view) }, 2000)
view?.postDelayed({ injectDownloadHandler(view) }, 1500) view?.postDelayed({ injectDownloadHandler(view) }, 1500)
view?.postDelayed({ selectHaikuModel(view) }, 2500)
} }
} }
@ -294,6 +295,30 @@ class MainActivity : AppCompatActivity() {
"})();" , null) "})();" , null)
} }
private fun selectHaikuModel(view: WebView?) {
view?.evaluateJavascript(
"(function() {" +
" if (window.haikuSelected) return;" +
" var btn = document.querySelector('[data-testid=\"model-select-button\"]');" +
" if (!btn) return;" +
" if (btn.textContent.indexOf('Haiku') !== -1) {" +
" window.haikuSelected = true;" +
" return;" +
" }" +
" btn.click();" +
" setTimeout(function() {" +
" var opts = document.querySelectorAll('[data-testid=\"model-select-button\"]');" +
" for (var i = 0; i < opts.length; i++) {" +
" if (opts[i].textContent.indexOf('Haiku 4.5') !== -1 && opts[i] !== btn) {" +
" opts[i].click();" +
" window.haikuSelected = true;" +
" return;" +
" }" +
" }" +
" }, 600);" +
"})();", null)
}
private fun checkPermissionAndOpenPicker() { private fun checkPermissionAndOpenPicker() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
openFilePicker() openFilePicker()