tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

attempt-fullscreen.html (1335B)


      1 <!DOCTYPE html>
      2 <meta charset="utf-8" />
      3 <title>IFrame Fullscreen API success reporter</title>
      4 <body></body>
      5 <script>
      6    window.addEventListener("message", async (e) => {
      7        switch (e.data.action) {
      8            case "report":
      9                await sendReport();
     10                break;
     11            default:
     12                parent.postMessage(
     13                    {
     14                        report: {
     15                            api: "fullscreen",
     16                            result: `Unknown action ${e.data.action}`,
     17                            frame: window.name,
     18                        },
     19                    },
     20                    "*"
     21                );
     22        }
     23    });
     24 
     25    async function sendReport() {
     26        let didSucceed = true;
     27        let error;
     28        let errorMessage;
     29        try {
     30            await document.body.requestFullscreen();
     31        } catch (e) {
     32            didSucceed = false;
     33            error = e.name;
     34            errorMessage = e.message;
     35        } finally {
     36            const data = {
     37                report: {
     38                    api: "fullscreen",
     39                    result: didSucceed,
     40                    frame: window.name,
     41                    error,
     42                    errorMessage,
     43                },
     44            };
     45            parent.postMessage(data, "*");
     46        }
     47    }
     48 </script>