Added improved settings panel.
This commit is contained in:
parent
306f22aa93
commit
132fdabb29
105 changed files with 3447 additions and 252 deletions
|
|
@ -194,6 +194,9 @@ class channel{
|
|||
* @param {*} value - Value to set setting to
|
||||
*/
|
||||
processConfig(key, value){
|
||||
//Unfortunately we can't scope constants to switch-cases so this is the best we got if we wanna re-use the name
|
||||
let nowPlaying;
|
||||
|
||||
//Switch/case by config key
|
||||
switch(key){
|
||||
case 'ytPlayerType':
|
||||
|
|
@ -233,18 +236,75 @@ class channel{
|
|||
return;
|
||||
}
|
||||
|
||||
|
||||
//Get current video
|
||||
const nowPlaying = this.player.mediaHandler.nowPlaying;
|
||||
nowPlaying = this.player.mediaHandler.nowPlaying;
|
||||
|
||||
//If we're playing a youtube video
|
||||
if(nowPlaying != null && nowPlaying.type == 'yt'){
|
||||
//Restart the video
|
||||
this.player.start({media: nowPlaying});
|
||||
this.player.hardReload();
|
||||
}
|
||||
|
||||
//Stop while we're ahead
|
||||
return;
|
||||
|
||||
case 'IACDN':
|
||||
//If the player or mediaHandler isn't loaded
|
||||
if(this.player == null || this.player.mediaHandler == null){
|
||||
//We're fuggin done here
|
||||
return;
|
||||
}
|
||||
|
||||
//Get current video
|
||||
nowPlaying = this.player.mediaHandler.nowPlaying;
|
||||
|
||||
//If we're playing a video from Internet Archive
|
||||
if(nowPlaying != null && nowPlaying.type == 'ia'){
|
||||
//Hard reload the media, forcing media handler re-creation
|
||||
this.player.hardReload();
|
||||
}
|
||||
|
||||
return;
|
||||
case 'syncTolerance':
|
||||
//If the player isn't loaded
|
||||
if(this.player == null){
|
||||
//We're fuckin' done here
|
||||
return;
|
||||
}
|
||||
|
||||
//Set syncronization tolerance
|
||||
this.player.syncTolerance = value;
|
||||
return;
|
||||
case 'liveSyncTolerance':
|
||||
//If the player isn't loaded
|
||||
if(this.player == null){
|
||||
//We're fuckin' done here
|
||||
return;
|
||||
}
|
||||
|
||||
//Set syncronization tolerance
|
||||
this.player.streamSyncTolerance = value;
|
||||
return;
|
||||
case 'syncDelta':
|
||||
//If the player isn't loaded
|
||||
if(this.player == null){
|
||||
//We're fuckin' done here
|
||||
return;
|
||||
}
|
||||
|
||||
//Set syncronization delta
|
||||
this.player.syncDelta = value;
|
||||
return;
|
||||
case 'chatWidthMin':
|
||||
//If the chat isn't loaded
|
||||
if(this.chatBox == null){
|
||||
//We're fuckin' done here
|
||||
return;
|
||||
}
|
||||
|
||||
//Set Chat Box Width minimum while Locked to Aspect-Ratio
|
||||
this.chatBox.chatWidthMinimum = value / 100;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -252,7 +312,12 @@ class channel{
|
|||
* Default channel config
|
||||
*/
|
||||
static defaultConfig = new Map([
|
||||
["ytPlayerType","raw"]
|
||||
["ytPlayerType","raw"],
|
||||
["IACDN",""],
|
||||
["syncTolerance",0.4],
|
||||
["liveSyncTolerance", 2],
|
||||
["syncDelta", 6],
|
||||
["chatWidthMin", 20]
|
||||
]);
|
||||
}
|
||||
|
||||
|
|
@ -289,7 +354,7 @@ const client = new channel();</code></pre>
|
|||
<br class="clear">
|
||||
|
||||
<footer>
|
||||
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 4.0.4</a> on Sat Sep 06 2025 01:36:01 GMT-0400 (Eastern Daylight Time)
|
||||
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 4.0.4</a> on Sat Sep 06 2025 10:33:49 GMT-0400 (Eastern Daylight Time)
|
||||
</footer>
|
||||
|
||||
<script> prettyPrint(); </script>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue