From a475bd4a6010145da44e3ccaa07895bdab6624ea Mon Sep 17 00:00:00 2001 From: matze19999 Date: Tue, 6 Oct 2026 15:59:14 +0200 Subject: [PATCH] Add optional automatic PicCap handover for non-secure playback --- .gitignore | 3 + HyperDRM.manifest.json | 8 +- ...RM_0.6.4_arm.ipk => HyperDRM_0.7.0_arm.ipk | Bin 1164794 -> 1169660 bytes README.md | 14 ++- app/app.js | 11 +- app/appinfo.json | 2 +- app/index.html | 3 +- docs/publishing-review.md | 6 ++ native/handover.h | 96 ++++++++++++++++++ native/playback.h | 47 +++++++++ native/service.c | 33 +++++- native/test_handover.c | 52 ++++++++++ native/test_playback.c | 18 ++++ package/packageinfo.json | 2 +- service/histogram-service | Bin 74852 -> 75944 bytes tests/remote-navigation.test.js | 6 +- 16 files changed, 285 insertions(+), 16 deletions(-) rename HyperDRM_0.6.4_arm.ipk => HyperDRM_0.7.0_arm.ipk (91%) create mode 100644 native/handover.h create mode 100644 native/playback.h create mode 100644 native/test_handover.c create mode 100644 native/test_playback.c diff --git a/.gitignore b/.gitignore index aeba5a7..78c6538 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,6 @@ service/led-interpolation.txt test-autostart test-retry + +test-playback +test-handover diff --git a/HyperDRM.manifest.json b/HyperDRM.manifest.json index 59a3744..4dc0c89 100644 --- a/HyperDRM.manifest.json +++ b/HyperDRM.manifest.json @@ -1,15 +1,15 @@ { "id": "org.webosbrew.histogramhyperion", - "version": "0.6.4", + "version": "0.7.0", "type": "web", "title": "HyperDRM", "appDescription": "Ambient lighting for webOS and Hyperion", "iconUri": "https://gitea.adnau.de/matze19999/HyperDRM/raw/branch/main/app/icon.png", "sourceUrl": "https://gitea.adnau.de/matze19999/HyperDRM", "rootRequired": true, - "ipkUrl": "https://gitea.adnau.de/matze19999/HyperDRM/raw/branch/main/HyperDRM_0.6.4_arm.ipk", + "ipkUrl": "https://gitea.adnau.de/matze19999/HyperDRM/raw/branch/main/HyperDRM_0.7.0_arm.ipk", "ipkHash": { - "sha256": "53762efd7e8d915d570fed96dbd1844d18ca825c21a9bc53f3aa28fea0f823ae" + "sha256": "0668d8abab98d81d51368863c7bc920f85f6107ec3872ea1810a332c2ddc87f5" }, - "ipkSize": 1164794 + "ipkSize": 1169660 } diff --git a/HyperDRM_0.6.4_arm.ipk b/HyperDRM_0.7.0_arm.ipk similarity index 91% rename from HyperDRM_0.6.4_arm.ipk rename to HyperDRM_0.7.0_arm.ipk index 4b6779df3f75b3f3a6d91aeff66f5ec7cb99d103..33fe62942318e4e1e6d9d3f5c35b0a75d72fb20b 100644 GIT binary patch delta 88885 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 z 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

5t4SZOv8m82S(w8+>= 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 IivZ{n0GkCQga7~l diff --git a/README.md b/README.md index 27204a1..76b591b 100644 --- a/README.md +++ b/README.md @@ -21,11 +21,11 @@ DRM playback color output was confirmed on the test TV. Support depends on LG's The 16 histogram samples are independent measurements; interpolation produces smoother transitions without adding independently captured detail. Sample positions are approximate G4 calibration values. Top/bottom bar detection is supported; side bars, arbitrary bar thickness and HDR color calibration remain limited. -Only the own service is modified. No Hue, LG library, driver or firmware binaries are included. For histogram initialization, the service temporarily creates LG's developer marker and uses a guardian process to remove its own marker afterward; an existing marker is preserved. +Only the own service is modified. Optional Auto PicCap can start and stop the installed PicCap service through its existing API. No Hue, LG library, driver or firmware binaries are included. For histogram initialization, the service temporarily creates LG's developer marker and uses a guardian process to remove its own marker afterward; an existing marker is preserved. ## Installation -The current package is [HyperDRM_0.6.4_arm.ipk](HyperDRM_0.6.4_arm.ipk). Install it using the TV's webOS/Homebrew package installation workflow. +The current package is [HyperDRM_0.7.0_arm.ipk](HyperDRM_0.7.0_arm.ipk). Install it using the TV's webOS/Homebrew package installation workflow. Elevate the installed own service through Homebrew Channel: @@ -85,3 +85,13 @@ The logo master is `app/logo.png`, with 80 px and 130 px installation icons. See [the publishing review](docs/publishing-review.md) for the requirements audit and unresolved submission conditions. This repository is not a claim that webOSbrew has approved the app. Remote navigation regression tests: `node tests/remote-navigation.test.js`. + +## Optional automatic PicCap handover + +Version 0.7.0 adds **Auto PicCap**, disabled by default. The switch is available when PicCap is installed. Keep PicCap's own autostart disabled and configure its output for your Hyperion instance. HyperDRM does not change PicCap's configuration or autostart preference. + +When the session is started, the controller polls LG's active media resources. Two consecutive foreground media-decoder samples without a Secure Video Path resource allow PicCap to start. HyperDRM releases its histogram capture and clears priority 149 first, allowing PicCap's configured input priority to take over. Any `SVP_CPB` resource selects protected playback; missing, stale, malformed, idle or HDMI state selects the conservative HyperDRM fallback. PicCap must confirm that it has stopped before histogram capture resumes. Detection is specific to the tested G4 resource model, not a universal DRM-state API. + +The switch is saved in the own service container and applies after reboot when Autostart is enabled. Stop pauses both managed capture paths until Start. Turning Auto PicCap off stops a PicCap session started by this controller and restores HyperDRM. Avoid starting another capture service independently while automatic handover is active. + +The app displays the selected source and PicCap's Hyperion connection status. Histogram region swatches are hidden while PicCap supplies the colors. Playback classification and isolated controller tests are in `native/test_playback.c` and `native/test_handover.c`; link both with `-ldl`. diff --git a/app/app.js b/app/app.js index d40bfd4..f1d7852 100644 --- a/app/app.js +++ b/app/app.js @@ -9,9 +9,17 @@ function call(method,done,data){ bridge.call('luna://org.webosbrew.histogramhyperion.service/'+method,JSON.stringify(data||{})); } function display(result){ + var handover=document.getElementById('handover');handover.disabled=!result.piccapInstalled; + handover.setAttribute('aria-checked',String(!!result.piccapHandover)); + handover.textContent=result.piccapInstalled?'Auto PicCap: '+(result.piccapHandover?'On':'Off'):'Auto PicCap: Not installed'; if(typeof result.autostart==='boolean'){var toggle=document.getElementById('autostart');toggle.setAttribute('aria-checked',String(result.autostart));toggle.textContent='Autostart: '+(result.autostart?'On':'Off');} document.getElementById('error').textContent=result.errorText||result.error||''; document.getElementById('status').textContent=result.returnValue===false?'Service unavailable':(result.running?'Running':'Stopped')+' · '+(result.frames||0)+' acknowledged color updates'; + if(result.activeSource==='PicCap'){ + document.getElementById('status').textContent='PicCap · '+(result.running?'Running':'Switching capture source')+' · '+(result.piccapConnected?'Hyperion connected':'Waiting for Hyperion'); + document.getElementById('regions').textContent='';return; + } + if(result.piccapHandover)document.getElementById('status').textContent+=' · HyperDRM · '+result.playbackProtection; if(result.colorValid)document.getElementById('status').textContent+=result.spatialOutput?' · '+result.ledCount+' LEDs from 16 color regions':' · Output RGB: '+result.outputColor.join(', '); else if(result.returnValue!==false)document.getElementById('status').textContent+=' · No current color output'; if(result.blackBarDetection && result.running)document.getElementById('status').textContent+=result.letterboxDetected?' · Top/bottom black bars detected':' · Full-screen capture'; @@ -29,4 +37,5 @@ document.getElementById('start').focus(); document.getElementById('autostart').onclick=function(){var button=this;var enabled=button.getAttribute('aria-checked')!=='true';button.disabled=true;call('autostart',function(r){button.disabled=false;if(r.returnValue===false)document.getElementById('error').textContent=r.errorText;else call('status',display);},{enabled:enabled});}; -setupRemoteNavigation(['start','stop','refresh','autostart'].map(function(id){return document.getElementById(id);}),document,window); +document.getElementById('handover').onclick=function(){var button=this;button.disabled=true;call('handover',function(r){button.disabled=false;if(r.returnValue===false)document.getElementById('error').textContent=r.errorText;else call('status',display);},{enabled:button.getAttribute('aria-checked')!=='true'});}; +setupRemoteNavigation(['start','stop','refresh','autostart','handover'].map(function(id){return document.getElementById(id);}),document,window); diff --git a/app/appinfo.json b/app/appinfo.json index b427af9..de4f062 100644 --- a/app/appinfo.json +++ b/app/appinfo.json @@ -1 +1 @@ -{"id": "org.webosbrew.histogramhyperion", "version": "0.6.4", "vendor": "Local development", "type": "web", "main": "index.html", "title": "HyperDRM", "icon": "icon.png", "resolution": "1920x1080", "disableBackHistoryAPI": true, "largeIcon": "large-icon.png", "appDescription": "Ambient lighting for webOS and Hyperion", "sourceUrl": "https://gitea.adnau.de/matze19999/HyperDRM"} \ No newline at end of file +{"id": "org.webosbrew.histogramhyperion", "version": "0.7.0", "vendor": "Local development", "type": "web", "main": "index.html", "title": "HyperDRM", "icon": "icon.png", "resolution": "1920x1080", "disableBackHistoryAPI": true, "largeIcon": "large-icon.png", "appDescription": "Ambient lighting for webOS and Hyperion", "sourceUrl": "https://gitea.adnau.de/matze19999/HyperDRM"} diff --git a/app/index.html b/app/index.html index f9e67a3..36d2543 100644 --- a/app/index.html +++ b/app/index.html @@ -2,7 +2,8 @@

HyperDRM

Ambient lighting for webOS and Hyperion.

Checking service …

-

Use the arrow buttons to select a control and OK to activate it.

Starts the service when the TV boots. Stop ends only the current session.

+ +

Use the arrow buttons to select a control and OK to activate it.

Autostart starts the service when the TV boots. Stop ends the current session. Auto PicCap uses installed PicCap for non-secure video and HyperDRM for protected or unknown playback. Keep PicCap's own autostart off.

127.0.0.1:19444 · Priority 149 · 10 updates per second

The Hyperion layout determines the number and positions of LEDs. Colors come from 16 LG histogram regions with interpolated edge colors. Restart the service after changing the LED layout.

diff --git a/docs/publishing-review.md b/docs/publishing-review.md index 26869f0..6cf6f6f 100644 --- a/docs/publishing-review.md +++ b/docs/publishing-review.md @@ -49,3 +49,9 @@ With autostart enabled, the native service retries startup every five seconds wi ARM retry-state tests on the G4 passed 10000 delayed-start attempts, five-second pacing, manual Stop, disabling autostart, the cleanup safety block, bounded non-autostart source recovery and disconnect retry. Live tests temporarily stopped and restored Hyperion without changing configuration; automatic retry continued beyond six attempts (observed counts 10 and 11). Manual Stop left retryPaused:true and retryScheduled:false after Hyperion was restored. A second live disconnect test confirmed retryScheduled:true while Hyperion was unavailable, followed by running:true and colorValid:true automatically within the six-second observation window after Hyperion restarted, without a new HyperDRM Start command. + +## Optional PicCap handover (0.7.0) + +The default-off Auto PicCap switch stores its preference in the own service container. If enabled, it uses the installed PicCap service's existing start/stop/status methods; it does not rewrite PicCap settings or its autostart hook. Only foreground media decoder resources without `SVP_CPB` are eligible, after two samples. Any secure resource or unknown/stale state restores the histogram path. VT capture is released and HyperDRM priority cleared before starting PicCap; stopped status is required before histogram capture resumes. Manual Stop pauses both managed paths. Shutdown attempts to stop a managed PicCap session before unregistering; a forced kill or unresponsive external service cannot guarantee this cleanup. + +On the G4, playback-classification and isolated controller tests passed: secure/clear/unknown states, mixed pipelines, malformed records, two-sample gating, exclusive transitions, manual Stop, disabling handover and timeout cancellation. The fifth control passed remote-navigation regression tests. Version 0.7.0 was installed and elevated; with Disney+ playing, enabling handover reported protected playback, maintained histogram color output and left PicCap stopped. The test preference was restored to off. Live transitions through unprotected playback remain to be verified with the user's test video. diff --git a/native/handover.h b/native/handover.h new file mode 100644 index 0000000..23030b4 --- /dev/null +++ b/native/handover.h @@ -0,0 +1,96 @@ +#ifndef HYPERDRM_HANDOVER_H +#define HYPERDRM_HANDOVER_H +#include "playback.h" +#ifndef PICCAP_BINARY +#define PICCAP_BINARY "/media/developer/apps/usr/palm/services/org.webosbrew.piccap.service/hyperion-webos" +#endif +#define HANDOVER_PREF "/media/developer/apps/usr/palm/services/org.webosbrew.histogramhyperion.service/handover.json" +static PlaybackJson playback_json; +static bool handover_enabled,piccap_owned,piccap_busy,media_busy,piccap_connected; +static PlaybackProtection protection; +static uint64_t protection_at,next_media_probe,next_piccap_probe,handover_cooldown,piccap_action_at; +typedef enum {SOURCE_HISTOGRAM,SOURCE_PICCAP_STARTING,SOURCE_PICCAP,SOURCE_PICCAP_STOPPING} CaptureSource; +static CaptureSource capture_source; +static void *service_handle; +static bool (*call_once)(void*,const char*,const char*,Callback,void*,unsigned long*,LSError*); +static bool (*cancel_call)(void*,unsigned long,LSError*); +static unsigned long piccap_token,media_token; +static uint64_t piccap_deadline,media_deadline; +static unsigned clear_samples; +static bool piccap_request(int command); +static inline bool piccap_installed(void){return access(PICCAP_BINARY,X_OK)==0;} +static bool handover_save(bool enabled){ + const char *data=enabled?"{\"piccapHandover\":true}\n":"{\"piccapHandover\":false}\n"; + int fd=open(HANDOVER_PREF ".tmp",O_WRONLY|O_CREAT|O_EXCL|O_NOFOLLOW|O_CLOEXEC,0600);if(fd<0)return false; + ssize_t n=write(fd,data,strlen(data));bool ok=n==(ssize_t)strlen(data) && fsync(fd)==0; + if(close(fd)!=0)ok=false; + if(ok)ok=rename(HANDOVER_PREF ".tmp",HANDOVER_PREF)==0; + if(!ok)unlink(HANDOVER_PREF ".tmp"); + return ok; +} +static void handover_load(void){ + int fd=open(HANDOVER_PREF,O_RDONLY|O_NOFOLLOW|O_CLOEXEC);if(fd<0)return; + char text[128];ssize_t n=read(fd,text,sizeof(text)-1);close(fd); + if(n>0){text[n]=0;void *root=playback_json.parse(text);handover_enabled=playback_true(&playback_json,root,"piccapHandover");if(root)playback_json.put(root);} +} +static bool media_reply(void *h,void *m,void *ctx){ + (void)h;(void)ctx;media_busy=false;media_token=0; + protection=playback_classify(&playback_json,payload(m));protection_at=milliseconds(); + if(protection==PLAYBACK_CLEAR){if(clear_samples<2)clear_samples++;}else clear_samples=0; + return true; +} +/* Commands: 0 status, 1 start, 2 stop. Confirm stopped status before VT reuse. */ +static bool piccap_reply(void *h,void *m,void *ctx){ + (void)h;int command=(int)(intptr_t)ctx;piccap_busy=false;piccap_token=0; + void *root=playback_json.parse(payload(m));bool ok=playback_true(&playback_json,root,"returnValue"); + if(command==0){ + void *running=playback_field(&playback_json,root,"isRunning"); + if(ok && running && playback_json.type(running)==1){ + bool active=playback_json.boolean(running); + piccap_connected=playback_true(&playback_json,root,"connected"); + if(active){if(capture_source==SOURCE_PICCAP_STARTING)capture_source=SOURCE_PICCAP;} + else if(capture_source!=SOURCE_PICCAP_STARTING || milliseconds()-piccap_action_at>=2000){ + if(capture_source!=SOURCE_PICCAP_STOPPING)handover_cooldown=milliseconds()+10000; + piccap_owned=false;capture_source=SOURCE_HISTOGRAM;piccap_connected=false; + if(!retries.paused)retries.due=milliseconds(); + } + }else if(!piccap_installed()){piccap_owned=false;capture_source=SOURCE_HISTOGRAM;piccap_connected=false;} + }else if(command==1 && !ok){capture_source=SOURCE_PICCAP_STOPPING;handover_cooldown=milliseconds()+10000;} + if(root)playback_json.put(root); + next_piccap_probe=milliseconds()+500; + if(command==2)piccap_request(0); + return true; +} +static bool piccap_request(int command){ + if(piccap_busy)return false; + const char *uri=command==1?"luna://org.webosbrew.piccap.service/start":command==2?"luna://org.webosbrew.piccap.service/stop":"luna://org.webosbrew.piccap.service/status"; + LSError e;error_init(&e); + piccap_busy=call_once(service_handle,uri,"{}",piccap_reply,(void*)(intptr_t)command,&piccap_token,&e); + piccap_deadline=milliseconds()+3000; + error_free(&e);if(command)piccap_action_at=milliseconds();return piccap_busy; +} +/* Return true while PicCap owns capture or a stop confirmation is pending. */ +static bool handover_tick(void){ + uint64_t now=milliseconds(); + if(media_busy && now>=media_deadline){LSError e;error_init(&e);cancel_call(service_handle,media_token,&e);error_free(&e);media_busy=false;media_token=0;protection=PLAYBACK_UNKNOWN;clear_samples=0;} + if(piccap_busy && now>=piccap_deadline){LSError e;error_init(&e);cancel_call(service_handle,piccap_token,&e);error_free(&e);piccap_busy=false;piccap_token=0;capture_source=SOURCE_PICCAP_STOPPING;next_piccap_probe=0;} + if(handover_enabled && piccap_installed() && !retries.paused && playback_json.lib && !media_busy && now>=next_media_probe){ + LSError e;error_init(&e); + media_busy=call_once(service_handle,"luna://com.webos.media/getActivePipelines","{}",media_reply,NULL,&media_token,&e); + media_deadline=now+3000; + error_free(&e);next_media_probe=now+1000; + } + bool clear=handover_enabled && piccap_installed() && !retries.paused && !retries.blocked && + protection==PLAYBACK_CLEAR && clear_samples>=2 && now-protection_at<3000 && now>=handover_cooldown; + if(capture_source==SOURCE_HISTOGRAM && clear){ + stop_capture();retries.due=0;piccap_owned=true;capture_source=SOURCE_PICCAP_STARTING; + if(!piccap_request(1)){capture_source=SOURCE_PICCAP_STOPPING;handover_cooldown=now+10000;} + } + if(piccap_owned && !clear && capture_source!=SOURCE_PICCAP_STOPPING){capture_source=SOURCE_PICCAP_STOPPING;next_piccap_probe=0;} + if(piccap_owned && !piccap_busy && now>=next_piccap_probe){ + if(capture_source==SOURCE_PICCAP_STOPPING)piccap_request(2);else piccap_request(0); + next_piccap_probe=now+1000; + } + return piccap_owned; +} +#endif diff --git a/native/playback.h b/native/playback.h new file mode 100644 index 0000000..b00f708 --- /dev/null +++ b/native/playback.h @@ -0,0 +1,47 @@ +#ifndef HYPERDRM_PLAYBACK_H +#define HYPERDRM_PLAYBACK_H +#include +#include +#include +#include +typedef struct { + void *lib;void *(*parse)(const char*);int (*get)(const void*,const char*,void**); + int (*type)(const void*);size_t (*length)(const void*);void *(*at)(const void*,size_t); + const char *(*string)(const void*);int (*boolean)(const void*);int (*put)(void*); +} PlaybackJson; +static inline bool playback_json_init(PlaybackJson *j){ + j->lib=dlopen("libjson-c.so.5",RTLD_NOW);if(!j->lib)return false; + j->parse=dlsym(j->lib,"json_tokener_parse");j->get=dlsym(j->lib,"json_object_object_get_ex"); + j->type=dlsym(j->lib,"json_object_get_type");j->length=dlsym(j->lib,"json_object_array_length"); + j->at=dlsym(j->lib,"json_object_array_get_idx");j->string=dlsym(j->lib,"json_object_get_string"); + j->boolean=dlsym(j->lib,"json_object_get_boolean");j->put=dlsym(j->lib,"json_object_put"); + if(!j->parse||!j->get||!j->type||!j->length||!j->at||!j->string||!j->boolean||!j->put){dlclose(j->lib);j->lib=NULL;return false;}return true; +} +static inline void *playback_field(PlaybackJson *j,void *o,const char *key){void *v=NULL;return o && j->type(o)==4 && j->get(o,key,&v)?v:NULL;} +static inline bool playback_true(PlaybackJson *j,void *o,const char *key){void *v=playback_field(j,o,key);return v && j->type(v)==1 && j->boolean(v);} +static inline bool playback_is(PlaybackJson *j,void *o,const char *key,const char *value){void *v=playback_field(j,o,key);return v && j->type(v)==6 && strcmp(j->string(v),value)==0;} +typedef enum {PLAYBACK_UNKNOWN,PLAYBACK_CLEAR,PLAYBACK_PROTECTED} PlaybackProtection; +/* G4 resource-state classification, not black-frame or app-name guessing. + * Any active Secure Video Path wins. Only a foreground media decoder without + * a secure resource is eligible; HDMI, idle and malformed replies are unknown. */ +static inline PlaybackProtection playback_classify(PlaybackJson *j,const char *text){ + void *root=j->parse(text);if(!root)return PLAYBACK_UNKNOWN; + bool clear=false,invalid=j->type(root)!=5,secure=false; + size_t n=invalid?0:j->length(root); + for(size_t i=0;iat(root,i);if(!p || j->type(p)!=4){invalid=true;continue;} + void *resources=playback_field(j,p,"resource");if(!resources)resources=playback_field(j,p,"resources"); + if(!resources || j->type(resources)!=5){invalid=true;continue;} + bool decoder=false; + for(size_t k=0;klength(resources);k++){ + void *resource=j->at(resources,k);void *name=playback_field(j,resource,"resource"); + if(!name || j->type(name)!=6){invalid=true;continue;} + const char *s=j->string(name); + if(strcmp(s,"SVP_CPB")==0)secure=true; + if(strcmp(s,"VDEC")==0)decoder=true; + } + if(decoder && playback_true(j,p,"is_foreground") && playback_is(j,p,"type","media"))clear=true; + } + j->put(root);return secure?PLAYBACK_PROTECTED:clear&&!invalid?PLAYBACK_CLEAR:PLAYBACK_UNKNOWN; +} +#endif diff --git a/native/service.c b/native/service.c index c210e6b..4dac8c6 100644 --- a/native/service.c +++ b/native/service.c @@ -118,6 +118,7 @@ static void stop_capture(void){ if(capture){vt_finish(capture);capture=NULL;} } static bool respond(void *h,void *m,const char *s){if(!h||!m)return true;LSError e;error_init(&e);bool ok=reply(h,m,s,&e);error_free(&e);return ok;} +#include "handover.h" static bool start_failure(void *h,void *m,const char *message){ retry_update(&retries,boot_enabled() && geteuid()==0,false,milliseconds()); char json[512];snprintf(json,sizeof(json),"{\"returnValue\":false,\"errorText\":\"%s\",\"retryScheduled\":%s,\"retryBlocked\":%s}",message,retries.due?"true":"false",retries.blocked?"true":"false"); @@ -127,6 +128,7 @@ static bool start(void *h,void *m,void *ctx){ (void)ctx;const char *p=m?payload(m):NULL; if(p && strcmp(p,"{}")!=0)return respond(h,m,"{\"returnValue\":false,\"errorText\":\"Start expects an empty object; endpoint is localhost:19444\"}"); if(m)retry_reset(&retries); + if(piccap_owned)return respond(h,m,"{\"returnValue\":true,\"running\":true,\"activeSource\":\"PicCap\"}"); if(capture)return respond(h,m,"{\"returnValue\":true,\"running\":true}"); frames=0;revoked=0;last_error[0]=0;lg_diagnostic[0]=0; output=socket(AF_INET,SOCK_STREAM,0); @@ -155,17 +157,29 @@ static bool autostart(void *h,void *m,void *ctx){ retry_update(&retries,enabled,capture!=NULL,milliseconds()); return respond(h,m,enabled?"{\"returnValue\":true,\"autostart\":true}":"{\"returnValue\":true,\"autostart\":false}"); } +static bool handover(void *h,void *m,void *ctx){ + (void)ctx;const char *p=payload(m);bool enabled; + if(strcmp(p,"{\"enabled\":true}")==0)enabled=true; + else if(strcmp(p,"{\"enabled\":false}")==0)enabled=false; + else return respond(h,m,"{\"returnValue\":false,\"errorText\":\"Expected enabled boolean\"}"); + if(!playback_json.lib || geteuid()!=0)return respond(h,m,"{\"returnValue\":false,\"errorText\":\"Root service and JSON-C are required\"}"); + if(enabled && !piccap_installed())return respond(h,m,"{\"returnValue\":false,\"errorText\":\"PicCap is not installed\"}"); + if(!handover_save(enabled))return respond(h,m,"{\"returnValue\":false,\"errorText\":\"Could not save PicCap handover preference\"}"); + handover_enabled=enabled;protection=PLAYBACK_UNKNOWN;clear_samples=0;next_media_probe=0; + return respond(h,m,"{\"returnValue\":true}"); +} static bool status(void *h,void *m,void *ctx){ (void)ctx;char json[4096],safe[512];size_t n=0; for(size_t i=0;last_error[i] && n+2=32)safe[n++]=c;}safe[n]=0; - int used=snprintf(json,sizeof(json),"{\"returnValue\":true,\"version\":\"0.6.4\",\"running\":%s,\"colorValid\":%s,\"frames\":%lu,\"endpoint\":\"127.0.0.1:19444\",\"priority\":%d,\"uid\":%u,\"drmVerified\":false,\"mappingVerified\":false,\"outputColor\":[%u,%u,%u],\"error\":\"%s\",\"regions\":[",capture?"true":"false",color_valid?"true":"false",frames,PRIORITY,(unsigned)geteuid(),sent_rgb[0],sent_rgb[1],sent_rgb[2],safe); + int used=snprintf(json,sizeof(json),"{\"returnValue\":true,\"version\":\"0.7.0\",\"running\":%s,\"colorValid\":%s,\"frames\":%lu,\"endpoint\":\"127.0.0.1:19444\",\"priority\":%d,\"uid\":%u,\"drmVerified\":false,\"mappingVerified\":false,\"outputColor\":[%u,%u,%u],\"error\":\"%s\",\"regions\":[",(capture||capture_source==SOURCE_PICCAP)?"true":"false",color_valid?"true":"false",frames,PRIORITY,(unsigned)geteuid(),sent_rgb[0],sent_rgb[1],sent_rgb[2],safe); for(int i=0;i<16;i++)used+=snprintf(json+used,sizeof(json)-used,"%s[%u,%u,%u]",i?",":"",rgb[i][0],rgb[i][1],rgb[i][2]); used+=snprintf(json+used,sizeof(json)-used,"],\"ledCount\":%u,\"spatialOutput\":%s,\"blackPercent\":[",led_count,led_count?"true":"false"); for(int i=0;i<16;i++)used+=snprintf(json+used,sizeof(json)-used,"%s%u",i?",":"",black_percent[i]); - snprintf(json+used,sizeof(json)-used,"],\"preset\":%u,\"saturationGain\":2.0,\"brightnessGain\":1.33,\"spatialInterpolation\":%s,\"blackBarDetection\":true,\"autostart\":%s,\"retryScheduled\":%s,\"retryPaused\":%s,\"retryBlocked\":%s,\"retryAttempts\":%u,\"letterboxDetected\":%s}",capture_preset,interpolation_enabled?"true":"false",boot_enabled()?"true":"false",retries.due?"true":"false",retries.paused?"true":"false",retries.blocked?"true":"false",retries.attempts,capture&&letterbox_mode?"true":"false");return respond(h,m,json); + snprintf(json+used,sizeof(json)-used,"],\"preset\":%u,\"saturationGain\":2.0,\"brightnessGain\":1.33,\"spatialInterpolation\":%s,\"blackBarDetection\":true,\"autostart\":%s,\"retryScheduled\":%s,\"retryPaused\":%s,\"retryBlocked\":%s,\"retryAttempts\":%u,\"piccapInstalled\":%s,\"piccapHandover\":%s,\"piccapConnected\":%s,\"activeSource\":\"%s\",\"playbackProtection\":\"%s\",\"letterboxDetected\":%s}",capture_preset,interpolation_enabled?"true":"false",boot_enabled()?"true":"false",retries.due?"true":"false",retries.paused?"true":"false",retries.blocked?"true":"false",retries.attempts,piccap_installed()?"true":"false",handover_enabled?"true":"false",piccap_connected?"true":"false",piccap_owned?"PicCap":"HyperDRM",protection==PLAYBACK_PROTECTED?"protected":protection==PLAYBACK_CLEAR?"non-secure decoder":"unknown",capture&&letterbox_mode?"true":"false");return respond(h,m,json); } static int tick(void *unused){ (void)unused; + if(handover_tick())return 1; if(!capture){ retry_update(&retries,boot_enabled() && geteuid()==0,false,milliseconds()); if(retry_take(&retries,milliseconds())){ @@ -231,6 +245,9 @@ int main(void){ void *vt=dlopen("libvtcapture.so.1",RTLD_NOW),*ls=dlopen("libluna-service2.so.3",RTLD_NOW),*glib=dlopen("libglib-2.0.so.0",RTLD_NOW); if(!vt||!ls||!glib){fprintf(stderr,"Missing LG library: %s\n",dlerror());return 2;} vt_init=symbol(vt,"vtCapture_initHistogram");vt_preset=symbol(vt,"vtCapture_setPresetHistogram");vt_get=symbol(vt,"vtCapture_getHistogram");vt_finish=symbol(vt,"vtCapture_finalizeHistogram"); + call_once=symbol(ls,"LSCallOneReply"); + cancel_call=symbol(ls,"LSCallCancel"); + if(playback_json_init(&playback_json))handover_load(); reply=symbol(ls,"LSMessageReply");payload=symbol(ls,"LSMessageGetPayload");error_init=symbol(ls,"LSErrorInit");error_free=symbol(ls,"LSErrorFree"); bool (*reg)(const char*,void**,LSError*)=symbol(ls,"LSRegister"); bool (*category)(void*,const char*,Method*,void*,void*,LSError*)=symbol(ls,"LSRegisterCategory"); @@ -241,9 +258,17 @@ int main(void){ unsigned (*timer)(unsigned,int(*)(void*),void*)=symbol(glib,"g_timeout_add"); void (*loop_unref)(void*)=symbol(glib,"g_main_loop_unref"); void *handle=NULL,*loop=loop_new(NULL,0);LSError e;error_init(&e); - Method methods[]={{"start",start,0},{"stop",stop,0},{"status",status,0},{"autostart",autostart,0},{NULL,NULL,0}}; + Method methods[]={{"start",start,0},{"stop",stop,0},{"status",status,0},{"autostart",autostart,0},{"handover",handover,0},{NULL,NULL,0}}; if(!reg(SERVICE,&handle,&e)||!category(handle,"/",methods,NULL,NULL,&e)||!attach(handle,loop,&e)){fprintf(stderr,"Luna registration failed: %s\n",e.message?e.message:"unknown");error_free(&e);return 3;} + service_handle=handle; + if(!boot_enabled())retry_pause(&retries); timer(100,tick,NULL); while(!quitting){iterate(NULL,0);usleep(10000);} - stop_capture();unreg(handle,&e);error_free(&e);loop_unref(loop);return 0; + stop_capture(); + if(piccap_owned){ + handover_enabled=false;retry_pause(&retries); + uint64_t deadline=milliseconds()+4000; + while(piccap_owned && milliseconds() +#include +#include +#include +#include +#include "retry.h" +typedef struct {int unused;} LSError; +typedef bool (*Callback)(void*,void*,void*); +static RetryState retries; +static uint64_t clock_ms=10000; +static unsigned stopped,called,canceled; +static char last_uri[128]; +static uint64_t milliseconds(void){return clock_ms;} +static void stop_capture(void){stopped++;} +static const char *payload(void *m){return m;} +static void error_init(LSError *e){(void)e;} +static void error_free(LSError *e){(void)e;} +#define PICCAP_BINARY "/bin/sh" +#include "handover.h" +static bool mock_call(void *h,const char *uri,const char *data,Callback cb,void *ctx,unsigned long *token,LSError *e){ + (void)h;(void)data;(void)cb;(void)ctx;(void)e;*token=++called;snprintf(last_uri,sizeof(last_uri),"%s",uri);return true; +} +static bool mock_cancel(void *h,unsigned long token,LSError *e){(void)h;(void)token;(void)e;canceled++;return true;} +static void answer(int cmd,bool running){ + char json[128];snprintf(json,sizeof(json),"{\"returnValue\":true,\"isRunning\":%s,\"connected\":true}",running?"true":"false"); + piccap_reply(NULL,json,(void*)(intptr_t)cmd); +} +int main(void){ + (void)handover_save;(void)handover_load; + (void)retry_failure;(void)retry_take;(void)retry_update; + assert(playback_json_init(&playback_json));call_once=mock_call;cancel_call=mock_cancel; + handover_enabled=true;protection=PLAYBACK_PROTECTED;protection_at=clock_ms;next_media_probe=UINT64_MAX; + assert(!handover_tick());assert(called==0 && stopped==0); + protection=PLAYBACK_CLEAR;clear_samples=1;assert(!handover_tick());assert(called==0); + clear_samples=2;assert(handover_tick());assert(stopped==1 && strstr(last_uri,"/start")); + answer(1,false);clock_ms+=600;assert(handover_tick());assert(strstr(last_uri,"/status"));answer(0,true); + assert(capture_source==SOURCE_PICCAP && piccap_connected); + protection=PLAYBACK_PROTECTED;assert(handover_tick());assert(strstr(last_uri,"/stop")); + answer(2,true);assert(strstr(last_uri,"/status"));assert(piccap_owned);answer(0,false); + assert(!piccap_owned && capture_source==SOURCE_HISTOGRAM && retries.due==clock_ms); + protection=PLAYBACK_CLEAR;protection_at=clock_ms;clear_samples=2;assert(handover_tick());answer(1,true); + retry_pause(&retries);assert(handover_tick());assert(strstr(last_uri,"/stop"));answer(2,false);answer(0,false); + assert(!piccap_owned && retries.due==0);assert(!handover_tick()); + retry_reset(&retries);assert(handover_tick());answer(1,true);handover_enabled=false; + assert(handover_tick());answer(2,false);answer(0,false);assert(!piccap_owned); + handover_enabled=true;protection_at=clock_ms;assert(handover_tick()); + clock_ms+=3100;assert(handover_tick());assert(canceled==1 && capture_source==SOURCE_PICCAP_STOPPING); + assert(strstr(last_uri,"/stop"));answer(2,false);answer(0,false); + assert(!piccap_owned);assert(!handover_tick()); + puts("PicCap handover tests passed");return 0; +} diff --git a/native/test_playback.c b/native/test_playback.c new file mode 100644 index 0000000..8d3f697 --- /dev/null +++ b/native/test_playback.c @@ -0,0 +1,18 @@ +#include +#include +#include "playback.h" +int main(void){ + PlaybackJson j={0};assert(playback_json_init(&j)); + assert(playback_classify(&j,"[]")==PLAYBACK_UNKNOWN); + assert(playback_classify(&j,"not json")==PLAYBACK_UNKNOWN); + assert(playback_classify(&j,"{\"returnValue\":false}")==PLAYBACK_UNKNOWN); + assert(playback_classify(&j,"[{\"is_foreground\":true,\"type\":\"media\",\"resource\":[{\"resource\":\"VDEC\"}]}]")==PLAYBACK_CLEAR); + assert(playback_classify(&j,"[{\"is_foreground\":true,\"type\":\"media\",\"resources\":[{\"resource\":\"VDEC\"}]}]")==PLAYBACK_CLEAR); + assert(playback_classify(&j,"[{\"is_foreground\":true,\"type\":\"media\",\"resource\":[{\"resource\":\"VDEC\"},{\"resource\":\"SVP_CPB\"}]}]")==PLAYBACK_PROTECTED); + assert(playback_classify(&j,"[{\"is_foreground\":false,\"type\":\"media\",\"resource\":[{\"resource\":\"VDEC\"}]}]")==PLAYBACK_UNKNOWN); + assert(playback_classify(&j,"[{\"is_foreground\":true,\"type\":\"hdmi\",\"resource\":[{\"resource\":\"VDEC\"}]}]")==PLAYBACK_UNKNOWN); + assert(playback_classify(&j,"[{\"is_foreground\":true,\"type\":\"media\",\"resource\":[{\"resource\":\"VDEC\"}]},{}]")==PLAYBACK_UNKNOWN); + assert(playback_classify(&j,"[{}, {\"resource\":[{\"resource\":\"SVP_CPB\"}]}]")==PLAYBACK_PROTECTED); + assert(playback_classify(&j,"[{\"is_foreground\":true,\"type\":\"media\",\"resource\":[{\"resource\":\"VDEC\"}]},{\"is_foreground\":false,\"resource\":[{\"resource\":\"SVP_CPB\"}]}]")==PLAYBACK_PROTECTED); + puts("Playback classification tests passed");return 0; +} diff --git a/package/packageinfo.json b/package/packageinfo.json index 10c8d12..5de294f 100644 --- a/package/packageinfo.json +++ b/package/packageinfo.json @@ -1 +1 @@ -{"id": "org.webosbrew.histogramhyperion", "version": "0.6.4", "vendor": "Local development", "app": "org.webosbrew.histogramhyperion", "services": ["org.webosbrew.histogramhyperion.service"], "sourceUrl": "https://gitea.adnau.de/matze19999/HyperDRM"} \ No newline at end of file +{"id": "org.webosbrew.histogramhyperion", "version": "0.7.0", "vendor": "Local development", "app": "org.webosbrew.histogramhyperion", "services": ["org.webosbrew.histogramhyperion.service"], "sourceUrl": "https://gitea.adnau.de/matze19999/HyperDRM"} diff --git a/service/histogram-service b/service/histogram-service index 6e15b2fa0c7468719d0a89750df43d068a2a09e7..36e64947e25a383e402ce1ffa14292857e0f76a6 100644 GIT binary patch literal 75944 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�@ z@7PwUeV{w9UDK0C^~(ESc+^l~{#H}&E9}|E0ZoT9=*O@dNYRLI2 zkl&KS?DN%?j~WM9kN?&f6ZxvK>7otUuT*zuH={* zSNCM=pf6?XN(P|Ubq-xlBIP+&wJ)mWy3_%5>nTGUQ%PSMe81tJKxGCTFt6^4wboDFqH`m;TeZIvcIzQ|2@KrYtb zn~^+xCCwkmXi^5*mrH#FU#+d`=d6Rjr>CxF@1m;xtF}qmO3GH23hdB&aB_G4LXo{g zQ{Zba?zZS_`fWM+J4tEIZ1C^0_wt9Ge5x{=pq;>V$!z89B>h-uTpH|C#{k09_Qf4fp^jx>FzQIUk2VuYoxo!I{2~RowP=}dyIo01Kvq% zq`ONUd?|P*t%aquPJowP=}+wb80;GMKay4&aAec+w6M!H*b@EUk0t)e_Q0N zz&mM;wD{1XPuN(7KQl?vGG3SJD|11gohN%^&ci45`*^3DJ*DWXAN#`J4tRS^=sSbk z6z|Uk7RcY;LieYjcj~0CZfY(_neGs0mSOQF>d~v9rUrIY`UW1aJpA%d<%@*%=*Zri zGuf|vI*qM~e-mAPLu`{z*A0Jg3U;OzyEt_OzJ@dPVAppx`!wdw2e8jCW%5%#um%3* zSw||T0@<8To0Ruo!~WzN2d}s1R4|_t9`2+Z^DU z&IQy-J$yZ7B zPx1G|BFyo`06b!UdaoodZO`A1jr3_N@|l5AyI0D*r%!`h1`aU)571xi0yYeqQ#t!! z#jnFJ%+SS*zmoZ+2YY}M=k#s4667{{U_-8gajUH0y?lHga3?408*=)< z${$w(2Wz^26!2w!T{42YsN;&O%-oyGp_Z-r5WlSENym7=vNxrlv zb_}|rYZ~Vwl}gW4YByMGoklyF@8WK0V^EGZ3 z_-+fJ2a$zRZad|=^aI%!*!M+|jc)>HSoISp4wqatX~Lu_6QN%@JnhF~<27)3+8=3i z!Y!Obh;Feibwfwf`(XA3b zcswib6qGK_WG}yGV|L6+)<^c^?)lt|7Y=0Q-jMi(%y<4Kt@woSchLEJtl+`XrHtS8 zrEeY{e#Ad;yWtzSLwVN~8AD%oLT<_j9?k9#?f9d9^gQPM7-J*%Plr$1K4m@r<<%Ot z%<>b353!kB;Y<9)hlsJMVq3HFw}b@8T2n3Kw1zrvUJrS$Uy5z1?hf^5xnEq}6W*3> zCjK1x{3%vBb33UGU}v4UWMHP*&ANFM``u&5m8`AhB|Hc29>C8X*e13cyN*AB9K=Rq z1M{+Oun)Y=r^4Ey3o}y=U1-#4s!MEb)}=?mYVDmoPWVH zea?)KSq=Mm*3>$#a?F$VCf=IVCf%B>)bT0g8FkI2NsYfR?fc-R$x3`WV-kBXJ=Kt# z_>rFM#9q>oSZ>ZWJ>1z@!5Ro%83*X$->^^NOyOdlcMYsCf*mGS{W0m|3O!29kV+-+GnSti8Zr3;_Yi&`O41hWc%t_ zBP3_NhtMpi;Ov#jWO`Odi~6H{z~vv!J1>v3(tOTGeXcgu+T0vXEsnOul56Abwe!;L zo$=3$7|xToDw^o9Ge1|$w}kkNPt2)cmmk5|1uYuw@pNZ<+a1wFXS{Zvg`ZJteYU7E zzAjxmulD+NDLy(BkLgZjovtS0(Y9Ltbf56>pVeQAWOPSNI=#?uUUuszXD-sC?Qy+5 zeqU#6J4{-%{=bchEuWEraEExNHEQpJzi?~wqG(EQ?a-J|#qMpZ{;ykrrnR zXMLt4*=7&#|J^p;J3f~3yuWc6Z&NxXs9$MZCOf1%#pFO$#6a>GqGXmEt22ac5hqq{x&`kl}uZz2CgmH zHnSt%+=-IJ;>}6EQS}~O6Y?`^nG+q%XcRR#>m##*wKHnlJKNe|rFPzB9W!d1lZj+I z%H7ID5O@_G+yd zT1JTu+w=RTk$Gu#*+z~UMImqF7TF(3a|uRaa&3HBvJ>gJ0#7BP>sN}%Y<;t}#~O+R zU!{w;uS~A9yJr(|>|Aql%^D^!M4B;w?FAYl7P-I{+WI-7jUy(vu-tiUuA>)!M1&rR zS-dgER{vzo-E;@(Wp{*|H$;$P<>83kj_H*>a;R8Y2OYSUtjpnm;3#?HL^AS6~)EAe&ombW#9dxDr zpOteBVnMm{jL8C5!S&`5%eXSGi*bz2(igSFoA1@JVk1jkyR3WhM0~9^d#sgDoCLik znY?$FWivf1Cu6hJHe2+~`OaTl#^`fcFjwzn5ykYhtxDEf4#0oT^D_B-p&qwZ@D5ne zWnQhN?&s|_fZ1nx z1eV<5?ZOJ`xHj6F5cfqVw}3OH7Dd}+sdmJqr;~OO-C9$ihuGvBhqB7fv_5pmy=noP z(#d<{ZSnS|RJ5J1H`+K`7EMlst~JHiQQs=>L8e)+gsvAKZEugRZ{oX?tJ5v#&l7U3 zvGdW3B|GIKi|5c|txz($LJOlQYVP=qNM!ctg4;2BZJMt(u3f{jC}kXZ$cHTTsJ>Pf zJAKLZ4LW9y6-Zyzo?LT|Y`o=NnRzOx2G=RZ8)}usruDP74!6bON*BeRrC)Dpc3e;6 z6Q85^=@#tE>K1)*a!p+PaHa<16;I4kmM3U`yi$hQb^dgWk}eiM*&c0QuP?cg72om7 z3mBlUqr9z&w%?1sh%s*KOzEr8n0V}CIySm9nxGwfqmtH?h#t@pL?b)k#L9df-(K3#u5>@15wmhP=UPBRi zUe}zB1Zn!w)oO`D#61y8^$U%$9Y_Pu1ypRiguw|@5MVCQ9f?#-60FT zTkvP2t4HZO@QrjKx;~MNqMysImrwKFL}%Uf4f4I=CCipNAHx+oZhBEP9bcVnw|Ko# zz6Oko8f_M%zhv3%ZQ{Vo=W~Vk)z-&?`TTA&)zlWh--XeDG~4MWzSL`vs9jdRbc~5^ zipFHE_tx!%>MC&W^ZY^0rtA`wfC(?moTE1O2=g}=nW55d%bKVxNouVFuXW%N_esh) zdsQhnb;|6Ot!=YATFR&DBcnL7qFBa%RA<-Ll}|6%^{DN`e>_O~{uWHLewRLTo&H}t z0@3f*FTb3MwbLAOwff9NTCbZE)bIY79!o-7r^6kciS);(O?QMzw(d*^4jX2+>2((P z9tXF@wW2M~q0qU$u71VmK7WNi=i1BbK4dl19PNn1h}~K(=G4OK`juCVZaBpL_)v3-0p*Q z&h*9jx1N0R$(OI={L%XDJbp`KW8~dk3IHS_BuI}lixeFHC0trgV)K~ zp#1*FUB7tajW4^+u3Ad`|yKqUpT9_z6CAtji2O6JU@}6^g(`- zFLvb%)qi;ThK5`5qs8-Nb&JJUvaluD6ic#|^S2qb^0jc;kG3Z}I%cLhmTPXoHqBg# zs?NllVh8O#ANh!!YDD=GIYy{iOg&YjYhu^bTbmJSy!b0hpeTW&1d0+UN}wo#q6CT( zC`zCxfuaP85-3WbD1o8`iV`SFpeTW&1d0+UN}wo#q6CT(C`zCxfuaP85-3WbD1o8` ziV`SFpeTW&1d0+UN}wo#q6CT(C`zCxfuaP85-3WbD1o8`iV`SFpeTW&1d0+UN}wo# zq6CT(C`zCxfuaP85-3WbD1o8`iV`SFpeTW&1d0+UN}wo#q6CT(C`zCxfuaP85-3Wb zD1o8`iV`SFpeTW&1d0+UN}wo#q6CT(C`zCxfuaP85-3WbD1o8`iV`SFpeTW&1d0+U zN}wo#q6CT(C`zCxfuaP85-3WbD1o8`iV`SFpeTW&1d0+UN}wo#q6CT(_$07M_QQPgCIc#8T(|{sQ#D{mr1i|1So&e{Otaf}0}Nd?Lf)>0L?%33CY{ zg5ca=Y%OCsUs=C?(k++S>E}tuK4_;GcPVw?Dm&dsIwp!z@Vjx*qIvrC2I~v#dR_gj zIkSQ@>puD+C#e=(N%?3zy0TSiI?2+j8?RSmO3Jix+QgDc+GOn_?P7nGc8ON)e(;?_ z-e1}oO24JWO6?qh?Fyow^7A{|C;Dl_qS3bA+OTM`Qld}t^IO`il<1ockF{daPaC!i zir(6=ogwqbhV2Z|EgP2Epp-ifervYb^UThdS;stJ-pS9e>;cR4xbTHmV&4cXGfS!c zBe2XKrH+ok_KcAED?h(Ao9y{(!!rArpCkG1EVTvXS0AwQ&swup>dP#JKXgZaeud%i z{QQ=+7)AK87LMpGWQqFCut=!FCL<|J0*eb^x4%kVXyv>86YC%n5LhSHfJL;fycF^h z*yUHOir6pr=e8gAw5OBl!aizC{e&l9_|={96RRe$*hTwyftu+iiCy~B3(B{6%GaN# ze0oHT73x~@1s0Uc&t^})w7wH)A~)Y_}}ZvzYV;=0S3x#Z|{iE zDy;I)df*7O4=jl$BtyQT@feh>nm!LYdP zzbcc;`q}hKL|Gj8BH9&r38vO9uU3ra3w^@_kD+|{Ze{sPZu#^*=azTZ1K~&b4ccax zlnqC^-0~CD6zB>3F0qEas~30!GNy>YQoqEp&tm`Pk}ojgCI4b|9dMNgz8Sd212+Qe z9$4tD1GaxvY8Ckc+w`iGIAITX;QN8QJn*Yj?DfDK$lvUN`+&E2;Kzacfu~VV!wNnF z{46k$1wTvTIZye&2Y%iIzXCh}EGx6r{{`?7U|A^z{w471z(P>qZ-IZ^H`<@yfIsem z8DwPugSN_x?{LDCKM8mc*ze?v9XbUZbl@7`8viK$%Yk*^kdt2z9P#8Y0*(Q@?R^S3 z?two8yvhUL58MLmj>jh8ga>{MIOT!=960T%|5f01p8RhDcLBTd8vx$y$^Rkn77zT7 z!2KThm%uxKUH<zXN#ClfM_({mFVS^CR8nVkW4+A>V~%K8ig^ zd;E!mlJCH-J=o{Tm-5ef;6s#mVYmDlPrkG-zP$ar*lJJqbM~)7y+(Z(cI&V3a}w-1x=!Wyv9cl}54a&DG^ zc7Cq^w9{iBm!BuUB)>E5@hW1H1GC&7<|VohSd;s?q#s&XXUycQpSS z=gChbM)MDzCx5Re|0n0kKjXq zC!_TPYMAz1ShK9ETbFS_-WT9ExcrMgd=NNDe`Kd2@JwKLyafIja2R=RcJdp5PXoK< z8-XV?9*dp)2yhMKw;z?4`mMmOKknnyA_?rJcRz3y>ZC3@axD&);Hn58`vxFhk@Pwq=r6h1NQbm11$QfJN^G_;Gvbk4!!RJ%lw(^z^@4G z*f){SKLSh3@)P>M2KJ8E?|{oZ{T(y*Tz#1Y+~CQt1wInT|F)=Bs9*v70DS5dR&%sk zu0Bq_m%qipH6D6*0(tOgo)=AIHhj3C{ZCLn z!TxFn^HlO13+k^ZpuYy#tB>n}W&b65DfPclP`E7117-iEk z_GEigYg=pDNv>*-$5kr2K9P(2^|xYZJh(H84aYZ*=C($V4!=E}~F^-eO4=-Sk1@0+4&R~MUPC=+x? z)HT^g$DHPzIyN&FEhi%ukH!+MZ6gJvmOzE1Ex?id<|yP6XdP~WC18huE#VOrYEC8- zF*>IbtD8{5)otifYqNC68f9WfT!<`9!>es#E0gW9csqGATohW3Kxr}7DpP=|C0$|K zb)-92tzyDS_gWe3R)%KP%GPv;qIP_BYX?KnlwQ-+oJh7YgiTGcWYg+Ia%D8p6iX-D zJDQ@M>lkZM6UKshaNZJ@XJoaH2&I__;vA)B?qrZh8Bb+ojuN-L{cG#2aVT9nr(Aez^t zVyor|Vae`nLu?*+RqMLWwvO1U4l!9x*0ZK2IB8vrb_pi7c1^4)(Y8*~!VTzHYrQ~C zH!NLn%k@pyf3l&e3FzFaBZwHyqg^BUt@pB5!>1_S%NVQg*vOH63l5Wa)+N{UgZHjJ3tb)z}P$<@s zbf?Nl4aSTdd*n#i13_X`s8Z1y4H8Z>bbU30=YS#);Q@s7#**X%AL|4V>p5k!FRR+Hr}$x9m^Y++`4eV zlBQd4xMA7#jZKaJr&05Fk=uykxQ=UFm~h4zH-Usy24fMN~hq!borEPOoQL)D4k65wzaU;u%U?sYdMC~8o#_zMbmj>)qOg3 z#ZArIQw%cu9bi*#=rk+I8{RpR930o^#f!E}v@IJC&jzb>iYuqu@MX_u)SabI&$NN7$ ziTUia^C-@bz1a}Ou15O@hmW+q@Tmo6Wy&1uM0sn%iwbcHOe@T&c*YhY_QIJ2A~pwA zC0o=Lm3CcIjF(sy?3n&v(2=uTAM!Nleu+pvq7bw{R?tx!` zMf8F^$x+ZNBDTAsiv zI^GO8o!_gjRNwj8zQngRxVL&7kLUslxNukNN|oq?mY%{34>S?~&+3ct`$XaEo7g>i&vIywH{)?+=f2^5jPs1s<#+{ul8u z{&e3Z+<6g3A-tpe00AdIqUhWq{9nMmB>5S%4e31Q)~A&WA%zpYf^^45IGy|4z5(|d zzH}y>{JlHi{vodMq99pn|654?C!FuaE&Nxj5XyZ=R=~->^^w$K1smG?FL{zHdGh0w zTU(r0u7E)wAIOqCjbR1hzVK1^FPpooRd82}_s8`{nhM^cjW$YJ5d%d_Tk4Ja>~5YKUeutmQU&&Y&+`%<_s5^V z&*wKEhMDg<^K$0QnVB=QPY!)x>N{a-v)p%KK>}(tx%Rs4f zRx_r=Ju}zF4gw8U?|C^h#%W-zY|nd(5>|qwM4l_GozOV3;Oc^Ft9lE1cfMb~CzPBZX>@-e_2GZ`yDxfGVj{;Df) zW$ElaU|svm*kuqpDi|}N#blPm{s)+*m;yC08V%kMz`}kHdUXSaga%#|KZ=iwFF;J-%i-hAHOUPlU?24K)D1@+ye-NL(K1)SbHMOg0ftnVpX^EPasp)Jr?M17j;u#Yu zg$?ylI-0S5O2;uaKl4W+oi1Oa%e!>> zDqY^G%a`l&Wx9NcF7KecTUD=J$FS=17G2(~%g5>ROqaj%m2L`j`F>qq)aBjhbl{9G ze?ph<(&dlo@*TSTAzeP8%kR_W+jRM6CGVDv%cEm#Lw;bmB*lUj1dXY* zM5fSsK^sU>8thWbVVk@tscmIWzb?UjW(y(E!pe5 zp)4?B&_GFKVld9JS7K^|w*%YX@k_(SKrpeZRkU`sghsN?{*ml3;t$hdY=8eS_Ei5> z!7mN727)x#HnTT06>ZQ|7BQC4m+Y5p?0}TmbwC=9GJ@IND#kbh!2t92m#PKxQIHCm z9S7uw;vgvrLXB9#JBUUs;Kj%dw2IX*Mww57vx@LA*a?FH3M>$uf_mE^Q2%wp(pl8VjI|EJzub9tZ89SrLLkLnaL1Bxtl`|A?|JRxD3z zt9Taqt{CQK)i}t@oj7|D=OfOh_?1F)B43HP60u5+M5D50YAi)sf>?~GC$b;67e8Wt}PRx%3VF6=J^Lax0lo9tp&_5s!UJ}?Pz94-}{LijO zF7yKR^UdjZj4*#8utdZ|posjn^jRZ%J{Q;t#41n*c#P#=3KLQPB({?*C`Ew6Xf~Pk zxMaowyB#I7P_h?t3?ME2oNu&bPO*TTNX4NeDsEzp(m1j>(CctM50?3*{7;mva0IM| zbUODsf6H=f-bnNYRfMt`d!x?f4IP4dV^QSOYoI%oqARZRq>RkWJ|bb3N5Vd-r~FU6 zp*jeaex1+E$TNhm@t0c@ zSGAxyGQk~4ukz0m zvA+}!AyN-gisguB)gcE^WON-qS&9tTZ_=ok?KfnYz>WjF5(v8YPI56Li!9w6o<4w z7YhrDB~5gr@!m;_pz?HOx}cROM40FWA#+`5IQleL&*F4PMFANTQe)TIzBtSf>+(uR z(ST6*^N^X{7iP{~Vhkz|Koc!!lo}un)TkPG5To3N&Z%RDcIuF?t5@)gXs2eUU#da9 znpYJ~tZ@Hau1^DX(}-DFAROcL$emE*21rRAYLc3|ej{muJw<|*H9@dSSumQOG&CMl z_Jl}6b>#d>YTry#vm`96SQo+>(i3K!Gp6< z>5NM6!5Kvjk9R0@Iu*Q59GJ8%98-CDDsLiqhu-$%^llXosyus;gjpT7id>oj{!vwH zu-(k2qNPgXvCMmZJ31tv!{YEtX(D_W%#j&Wq1XWJxtJP{S6T=S#A2EfP&OX4f5Yff zdc7f=dho)a`NZ5&?u9tT4T;Y1j7a3pd00(mbwE!eAGcYVie<<%Rp8Ue)1gZP>qdS+ zUC3`Be*vqs&vQeA{}qXRbPi>;bG8sNk!D}QY;*>BAs?@2DG$BS;|;l;bX#H$%*}D|M!>~SF7m2ij0|o=~+0kDRgXclT?G)vAA0* zKn$V~WB)EKnBEkM!S37PJRY0^I*y$;97TJj7*>Is1j{sC<%eyV8FsWyn#EC<&$De&ZT-voAoMDs6r6qT(?rma;}E3(<;bLww|WzPfmI z%FC#5Lbby<>Gb^Q6hE-H)TBO)c4rA$Nk=jrr7g~~9VW)e#HuS?V2 zsTh+9D}k1j0poJazzGaZ*vpPf-7}6$Uwj8$u7>VCv{_;!Yr|;`L!+K*0^ZP-Cr$+i z@=pcHSeOf21=}U%G4}GAyZq8N45|mIr_3ugA#MlmTHu#XVC$fZ;jvTxB*`Sw751%u z+Pv(1@vQWCBYVD|?iek6^IfU#?PIZI9sDyzNZLuc%#iAQG^(Q83Bslw83f3;LO&$i);1i@DfN&Y%%0;Bu` zHk*M&zqE#Mn=>>4y6mgFfBvIo{@y9fiMY7UdJJ|-dM&yVr7*gb3GxF6L^%b znwD+Y`yGFLTBf^FEp#hP))2ci{3Uiz+GR(A?t(<5a+<)7oa0gqERuL};FU-5O6U8f zRjPVPvyL9WG^AbmlGu(5;#-K6KHq=o$7E~m?tbRzkuP?ptQ+bkRg*P2(9ytcKUDWg zY`s1hJactP=Z51fBQ>*DF_i`qaE8nROXwb>tl8P1b*g#h!4U%Cr-Rn6(OhnYcqfSa zRice~B`P=>v=*(PQz=IRZC7c*SprxUN3u!fCgF$J5wk8vd;VZOYf;C}S;W+T;39u*> z=-Bal=`d)tr!B*NeGI1g9AOAR``;!A{T*;K^M*c9=?{W-R;^QwI&&d-GlUxet@KX6 z)FR)Ju~T5Jr&$}Nf)#l2DM(PH>YnrrByJUH6j^hX6DLi*rQ3yF5_YLKjOh4d>cAm} z=icuPrC}GxX>s92nbwAlxgz`%2w}n5N7hR|#=jB|Lc{#upnCS41M(@*ITZ#}<}hOI zRD@TcQU?g~ekIU;!nCFkZ4+5yi!|Um9=x)qJ9rFd#K*Y9)~n(sqvzM*x-?-MaiAwhyn4_= z4JL?Qg(29PCzOx!X6UY^#4njMNXn-_qcuXS9qVPL^kWpbYX9M4`39Z6gU)CIXmVSS zK8chjHw$SH3u!%_IsJag&Oex$y^i)ja}^z>2mAM1U@zA0Ank%lN;mSdyc0E>qIx=u zo?bvtb>)6(9$KtDp$vm|R{>i#?Fo5U>a+*YZac=k_daZ3DKnB#ez zV=dCvWzaALYES>a1^Nd%+L!-BCAUE!Y<(A+P@a|{&58?`6?$qS8;Zf~x3;ms>> zU}*oac<>Nc2kYp#v6uV~J;yi?a2Q*~@XuBH z|A4L?*ko^XX8w#9-E-UIT9hWV0VOM;6jBn7b)(=g;-+5_#%%ADh!@nW16_X7tOg9}atMsUt>D)PWOgr z$q|okvWY711pnaPF+wu`{ND7j!!a%zAC1dU7D#O>@`~qfJ1(F6-|(FB?8$p^aVCw% zqtsxWqDOL#G+G1rH0l@8BOP2qTOe4?x0Yu=^s!nRcY*}E7bd`|qC?$*cL9g4RWEAV zK(m21vMvxF=E6fqE@r3fi6=+MFE!x^?*L;%;b5i5G)KU-gv2*gr z4norhRmw8tx2gH{XyaYJX3oU1WKm>6WL0EMWJz?7?|{QMo4+#WHsK!rw>jAv(`any zog6y7RFCuIxnt(i>JEI1UE31~e}ctDJJ(CV&E^AAGHM*c?QWmhEA7M4gH;gRk2CNN z;-lPiNato_4$(%#xBTI`lMJcf@|Wl4x<`Za74|&OCj#sG6h1#Z;|8QF5k2H3gKl8+ z2634ZEWqu+eGHB(u44W0pao`SO}GI#KE_oI(TaE!bVey|RxQX^g6~AELUbWkBi14| zOvc;lHe@RC!)OloCNT3PT+?oc@gYywvkv6< zqHZrbYCu{E+;t8E0Cpf>f_xg%G^9P~s}J?i-9vCBI*aZ)+9L<^F=s&|nOvWD@O*E@uco<7WmO z-p~s7?$ESAdFZG7wfT#L3?8%K_JS(ZrR8%K5}m*uf}CkOmmN7=Do8#q;q?mnMoD0S zFn2AOJ?DMcB6Ij8!^&M4QU%uD&vyxBl_7GP$q$Nce=;--bW`BT(3_x5bCicHF7g7r zQUN+J!D^|4h5Yjct->?>v4yuyt%P?TyMK4c)V4chWXpp_)cpW;ou~ZRSm{TLRv?$xKU=x38(KKN;KeZ@b zn8u|=*-4gm<@d6hqGzQA6M2d=FXwOHVEAzHmtpw5aDbnI#izmY$(i^Zyc)jTc}w!b z=}(3nB!8P%DlYR%$GF!yQK;c>Iva(4K4bB7LKpvd@fhKC{?Em;+ykm>V={Zs_x}hh z-$`$6t>QyyuNORe{vr*~GZ$%!d78ytk;sz;Z5R06w~g(o?q80;>LKv=vu~qyClQiNM+#N(uLgxXNT(1*&G?f872mT z&i97S=b__y7;X!t%gG~Y?`PH?_z2H^=E$HOS-B+8Zd`$jPr}{sK_?V{f56-kvley1cm)A zy^bGX98Do1p(1<j*g59M5_O#P8lc3_^9y)qK+YcxC@LXnLQ`^XzQ zs6JQ~@TryA84FwKm$N7PO%7jQBWuJHI5Fv+W<{nFJb z%8e+?x^-2&FCwFMyMA<{o9uX+E!=|9WY5Mte?^ zM1Jm>`X=e@&L*iBTY4K>w)68#Zz(E)-!zQ1^jD)lnj~^-NDnkYn<3S1xDO{#qexxb zGx%N0#u%O+ zH5LVeNe(V%b?uQ(PXwPiL#(R@3)LAkboGkxr*E}6_DGT9yV{bW-I5$lKIB)a)R z7ZkSm3ze0AX*MLGR}VUd?W`&E%Gdan1V?!(UtBe2sYnP%86BOZsxtH4A-Z!6lSMiU zkw&Q^je_Z$G#fLteoYSDvv7{09w{Jdk8qUgqAv%wCZ(}#n{ju zEGAR-h)pmX9~%7?2KvR-$c02SYUeL3PoLU?s(3r-f7Q_=-ckZT3-=1D-kTy$)oy{F7v9%@D164-)^KeVFat}`k00$UM0i;JVt`k}b) zYUED3MA8FI49tu!1f(_t{NHw=DF(|c#&|9#rFZUUpjFE zQH^MhEc+;_9PN@3ap7&T)H;ek_v7X6qdEA2%iJja1axgt3ZV`tFo z0KJMsuXg_Es@qdGkMx9MpnV|=_uM+K)cF;EYgJzEzo8y_mWF{v>zG(C5Y4=o9+<)} ze8po|7gj$45?lF_~nN!{91jY zaY|wFk;E+@3ViO?t^Bq}l6l%AOZe(KD<54~&etQ~`^fW0{(DJUHfZ90tt-yt>g#Z9;E6%yTe z&t?A~qx=7P=NRY@0)1|&1^NUM+K8NW;W~lX=fWlD5;8>8Lfjhs1eBvx8Kgp3D-^D} z@Ut{t<0zO=#*^(^AqcO!X~HNNS&W>LiYXZ7X~a(xm;wdk_a6kBG73g{val{`mSwCk zqCd%{*-`jPMjMb(wjNdi!_f+m8R5b-gq5Mw_rw&84BHDr)ettzm_8?_V3aKiznxV3 zJ~0RjleI5pjk3j|p6@QBFnx{oeJfcn*>57*og5Ubb;r;h@wMj3U`YVNR-^(j@ilQ7 zzMmyL==<0xWY0{~HA}@cY(OC@=Fss;ahlp_)et^Z;hSa>#-;SC>eJ}$6~2w2yGv*} z$stkxjDxTRSZja2j!*45b$G6d_2sK|e3EZ=CH|8`k}OY+j=z{;Zzlp??uR<88KqT7 zlq+o0VHa33)|Fp5I;y-5Z=mwP+mLDlx}@XBqklG_BWy-N!t-?%9O(dZPy{N~VQQH0 zexzClJvu&V?3@noQE{C%0QApn>S`iOq6*sTBJ5Z3Hq(s`tT;-Qpp@^@;r{@Guuba# zxJO;NTKn2cChR_f0z}Y{U|Y7*yjH=Z!^glPjIX+eMm#^~hvl_xgX%}H+6fQB<~0qK z;8#*5B)a7hR~HQt*gMD)o}YZ9f@{VNK53|I<_%0nc5K!SOnhx`AOU0}q_aT|3O29N zuseypi#!po3A7lK@QWGn19*5rN|+kB3fYyA&OT8wW(53nCLuKo2BzTw;4~fn4%ni@ z)Se4i4sI;AM0899r2z{Y1zfGeV}WaQ*bZE)!-c?gIy@D48!&Ba_!XSZ0B!~bknw+k z-fU3%b5nu&V6=dML@rQ;Oq*JO`1b?v1vaYuYT$jqG>ycs0Y0HCUk}^^T&D6pz=_5i z18fC010!+E4ZMV0nyvsoUS$>?hI_`cbQnG)v+D2%z&2oNkp%jbF#Z5S)97cwb{)P9 zTp(k&QsFxg93aq{MGcVGQKGAWZ>Lz9j(-cV7EJ7Ngy!^Ug+@tYh2U$LY>14qM7L9y zQTv3^KTJ!p%356ks<2&$XQG0Jwep=hJ_$g_x)Rdm4#~q(LLyrVmWH+ZR_wgWQ3(Ma zM1d;bh!Mh=yho5tj6fp@aN^~*$YWDNB6}YE;xymF5kjW>W#r?A%BISTMf*z*I!N9F zUkjut8dtAwwf^-c{PKIW8i_0fz8-(4E6>;h=Vv{L)7X;0oNW!JS0aR#EE35@3 z4d4r6c?9$)P1-`F)8SEIvbS1Q;3uMRE3ke*`+$c8bfd$UK=3StudOz47AadU|jk{^YaUht7miXmJGO%6)*}!CwR#gK9 zz{Qv%tJ>gQz_emYR6HM8+agFqRluY>3Ieu>jlk-Zxn-3;48nZfh<5?&jpk|KW*z?p z;6zN3O>Q=k{VEFQLQu_3#w$DP1Ya-UyTC5FJ?ze;fxm#Dx7t2nz0nN->!*k|+3DEvtj zz5=Y>EX~kxOq@16Wr{}=R{NJVVAmC}f_H}wlSV#_QgJ!>`oGD%FRFY^6t>gRtOjcD zQSi0?WdSxu71$fqz`-c|8nAwjuVcj8rJ4Td^9}Ize`R_+s{H$LH~N(^|k z-CDoScRF3jOd5KaV+|V~c+gjF5!T*Pzpk$KQMRtWepCJZ>+9F8WA*DA>Nl+0!fMxS zX}Dje`|>k{6+VB4U>jDq=F!?sYpQ?qXr@qa`px&_gz+)HY@6T}>U^)*gzR{F3Zl5! z_h*9i5=8MS-!;G((&9>A&UoRLczOe(c*wV4JPOhi5XFFRD_|_`(PxMIo*ggb#?$sm zvB~#)uo7t6DbBvz_r-W&TrBwvcjDSt=qTMJ$+`8n`yo}@fI zz^ttHy-Io7t?}OTQJ(OkFz9uf^M!oj u5g)!=&QCfB4%s%|l-YUaTWA+DV;j=&BA(#eXcuxVfpG#$#j&FWE&IRIQm_R8 diff --git a/tests/remote-navigation.test.js b/tests/remote-navigation.test.js index f8d0eec..5dcc278 100644 --- a/tests/remote-navigation.test.js +++ b/tests/remote-navigation.test.js @@ -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');