Mod for fullscreen support for corru.observer.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Initial commit

Different55 eac07712

+44
+3
README.md
··· 1 + # Corru-Diver 2 + 3 + Small mod for [corru.observer](https://corru.observer) to add fullscreen support. Find the button in the mindspike system menu, next to the RETURN button.
+41
corru-diver.js
··· 1 + document.addEventListener("corru_loaded", () => { 2 + // Create Full Dive button. 3 + let diveButton = document.createElement("div"); 4 + diveButton.classList.add("menureturn"); 5 + diveButton.classList.add("button"); 6 + diveButton.setAttribute("onclick", "document.fullscreenElement ? document.documentElement.requestFullscreen() : document.exitFullscreen();"); 7 + 8 + // Set up handlers to change text. 9 + function exitedFullDive() { 10 + diveButton.innerText = "FULL DIVE"; 11 + diveButton.setAttribute("definition", "NOTICE::'disconnect external senses';'allows messages from connected terminals';'press esc to resurface'"); 12 + }; 13 + function enteredFullDive() { 14 + diveButton.innerText = "EXIT FULL DIVE"; 15 + diveButton.setAttribute("definition", "NOTICE::'reconnect external senses';'maintains ocular and sonic feeds from mindspike'"); 16 + }; 17 + function fullDiveError() { 18 + diveButton.innerText = "DIVE ERROR"; 19 + diveButton.setAttribute("definition", "NOTICE::'failed to disconnect senses';'additional information unavailable';'maybe check out the browser console?'"); 20 + diveButton.removeAttribute("onclick"); 21 + diveButton.style.color = "var(--bastard-color)"; 22 + diveButton.style.background-color = "var(--dark-color)"; 23 + } 24 + 25 + // Set up initial button state. 26 + exitedFullDive(); 27 + 28 + // Keep button state updated. 29 + document.addEventListener("fullscreenchange", () => { 30 + if (document.fullscreenElement) 31 + enteredFullDive(); 32 + else 33 + exitedFullDive(); 34 + }); 35 + document.addEventListener("fullscreenerror", fullDiveError); 36 + 37 + // Insert button into main system menu. 38 + document.querySelector("#system-menu .menureturn").after(" ", diveButton); 39 + diveButton.addEventListener('mouseenter', () => play('muiHover')) 40 + diveButton.addEventListener('click', () => play('muiClick')) 41 + });