Add optional automatic PicCap handover for non-secure playback

This commit is contained in:
matze19999 committed 2026-10-06 15:59:14 +02:00
1 parent e720045bb1
commit a475bd4a60
16 files changed
+285 -16

No files matched your search

+4 -2
View File
@@ -4,8 +4,8 @@ const path=require('path');
const vm=require('vm');
const handlers={},windowHandlers={};
const doc={activeElement:null,addEventListener(type,handler){handlers[type]=handler;}};
const buttons=['start','stop','refresh','autostart'].map(id=>({
id,disabled:false,clicks:0,handlers:{},
const buttons=['start','stop','refresh','autostart','handover'].map(id=>({
id,disabled:id==='handover',clicks:0,handlers:{},
addEventListener(type,handler){this.handlers[type]=handler;},
focus(){doc.activeElement=this;this.handlers.focus();},
click(){this.clicks++;}
@@ -25,5 +25,7 @@ doc.activeElement=null;key(39);assert.equal(doc.activeElement.id,'refresh');
assert(!key(461));assert(!key(65));
key(40);assert.equal(doc.activeElement.id,'autostart');key(38);assert.equal(doc.activeElement.id,'refresh');
key(13);windowHandlers.blur();key(13);assert.equal(buttons[2].clicks,4);
buttons[4].disabled=false;buttons[3].focus();key(39);assert.equal(doc.activeElement.id,'handover');
key(39);assert.equal(doc.activeElement.id,'start');key(37);assert.equal(doc.activeElement.id,'handover');
buttons.forEach(button=>button.disabled=true);assert(key(39));
console.log('PASS: arrow navigation, wraparound, disabled controls, OK once per press, pointer handoff, focus recovery, Back preserved');