function toggleFullScreen(elem) { // ## The below if statement seems to work better ## if ((document.fullScreenElement && document.fullScreenElement !== null) || (document.msfullscreenElement && document.msfullscreenElement !== null) || (!document.mozFullScreen && !document.webkitIsFullScreen)) { if ((document.fullScreenElement !== undefined && document.fullScreenElement === null) || (document.msFullscreenElement !== undefined && document.msFullscreenElement === null) || (document.mozFullScreen !== undefined && !document.mozFullScreen) || (document.webkitIsFullScreen !== undefined && !document.webkitIsFullScreen)) { if (elem.requestFullScreen) { elem.requestFullScreen(); } else if (elem.mozRequestFullScreen) { elem.mozRequestFullScreen(); } else if (elem.webkitRequestFullScreen) { elem.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT); } else if (elem.msRequestFullscreen) { elem.msRequestFullscreen(); } return "on"; } else { if (document.cancelFullScreen) { document.cancelFullScreen(); } else if (document.mozCancelFullScreen) { document.mozCancelFullScreen(); } else if (document.webkitCancelFullScreen) { document.webkitCancelFullScreen(); } else if (document.msExitFullscreen) { document.msExitFullscreen(); } return 'off'; } } function cmd() { const shell = new Cmd({ selector: '#cmd', busy_text: 'Traitement...', unknown_cmd: 'Commande non reconnue, tapez help pour avoir la liste des commandes disponibles', external_processor: processor }); shell.setPrompt("[chell@glad.os] ➜ "); } function processor(input, cmd) { input = input.toLowerCase().replaceAll('é', 'e').replaceAll('è', 'e').replaceAll('à', 'a'); switch (input) { case "fullscreen": let res = toggleFullScreen(document.getElementById('cmd')); return "Fullscreen " + res; case "ping": return "pong"; case "ifconfig": break; case "rate": new Promise((resolve, reject) => { var audio = new Audio('./success.mp3'); audio.play(); }); return '
' + $('#lock').html() + '

Ouverture !'; default: // Commande inconnue return false; } }