    }

    @Override
    public boolean dispatchKeyEvent(KeyEvent event) {
        if (event.getAction() == KeyEvent.ACTION_DOWN) {
            int key = event.getKeyCode();

            if (key == KeyEvent.KEYCODE_DPAD_CENTER || key == KeyEvent.KEYCODE_ENTER) {
                webView.evaluateJavascript(
                        "(function(){"+
                        "var f=document.querySelector('.focus');"+
                        "var r=null;"+
                        "if(f&&f.classList.contains('videoBox')) r=document.querySelector('.row.active');"+
                        "else if(f&&f.classList.contains('row')) r=f;"+
                        "else r=document.querySelector('.row.active');"+
                        "if(!r){if(document.activeElement){document.activeElement.click();return 'CLICK';}return '';}"+
                        "var u=r.getAttribute('data-play')||'';"+
                        "var n=r.getAttribute('data-name')||'Canal';"+
                        "var l=r.getAttribute('data-logo')||'';"+
                        "var sid=r.getAttribute('data-stream-id')||'';"+
                        "var a=r.getAttribute('data-now')||'No information';"+
                        "var nx=r.getAttribute('data-next')||'No information';"+
"var ns=r.getAttribute('data-next-start')||'';"+
"var ne=r.getAttribute('data-next-end')||'';"+
                        "var st=r.getAttribute('data-start')||'';"+
                        "var en=r.getAttribute('data-end')||'';"+
                        "var p=encodeURIComponent(u)+'###PZ###'+encodeURIComponent(n)+'###PZ###'+encodeURIComponent(l)+'###PZ###'+encodeURIComponent(a)+'###PZ###'+encodeURIComponent(nx)+'###PZ###'+encodeURIComponent(st)+'###PZ###'+encodeURIComponent(en)+'###PZ###'+encodeURIComponent(ns)+'###PZ###'+encodeURIComponent(ne)+'###PZ###'+encodeURIComponent(sid);"+
                        "if(f&&f.classList.contains('videoBox')) return 'FULL:'+p;"+
                        "if(f&&f.classList.contains('row')){f.click();return 'ROW:'+p;}"+
                        "if(document.activeElement){document.activeElement.click();return 'CLICK';}"+
                        "return '';"+
                        "})()",
                        value -> {
                            if (value == null) return;
                            value = value.replace("\"", "").replace("\\\"", "");

                            if (value.startsWith("FULL:")) {
                                abrirPlayer(value.substring(5));
                                return;
                            }

                            if (value.startsWith("ROW:")) {
                                String payload = value.substring(4);
                                String[] parts = payload.split("###PZ###", -1);
                                String url = parts.length > 0 ? Uri.decode(parts[0]) : "";

