diff --git a/CHANGELOG.md b/CHANGELOG.md index b88e20682fb3b164954858505dd5d4e2241d8f7a..c5ded7f643e05604af08ccfde7baa6d6ffd02f52 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -* +* Support for true fullscreen at a browser level ### Changed diff --git a/examples/web/index.ts b/examples/web/index.ts index 2d5409d696ddcca5328a783878415026f17debac..79836e4eb1f567ce98df45c3af2c3fed82c64ded 100644 --- a/examples/web/index.ts +++ b/examples/web/index.ts @@ -279,7 +279,6 @@ class GameboyEmulator extends EmulatorBase implements Emulator { case "neo": this.gameBoy = new GameBoy(); break; - default: if (!this.gameBoy) { throw new Error("No engine requested"); diff --git a/examples/web/react/app.tsx b/examples/web/react/app.tsx index 41589ab619947ca7ade90cf81efe9e020fc04a5c..d0bbb7caa62b735363d0d52b219499404ac84e41 100644 --- a/examples/web/react/app.tsx +++ b/examples/web/react/app.tsx @@ -333,13 +333,11 @@ export const App: FC<AppProps> = ({ event.stopPropagation(); event.preventDefault(); break; - case "-": setKeyaction("Minus"); event.stopPropagation(); event.preventDefault(); break; - case "Escape": setKeyaction("Escape"); event.stopPropagation(); diff --git a/examples/web/react/components/display/display.tsx b/examples/web/react/components/display/display.tsx index a71d57aeb22fe77457a11cb59678bd60dc2510e7..00a779469e7b0584f740e7d4befe0b555a7ad56f 100644 --- a/examples/web/react/components/display/display.tsx +++ b/examples/web/react/components/display/display.tsx @@ -92,6 +92,10 @@ export const Display: FC<DisplayProps> = ({ resizeRef.current(); document.getElementsByTagName("body")[0].style.overflow = "hidden"; window.addEventListener("resize", resizeRef.current); + + // requests the browser to go fullscreen using the + // body of the document as the entry HTML element + document.body.requestFullscreen(); } else { setWidth(undefined); setHeight(undefined); @@ -99,6 +103,10 @@ export const Display: FC<DisplayProps> = ({ .getElementsByTagName("body")[0] .style.removeProperty("overflow"); window.removeEventListener("resize", resizeRef.current); + + // restores the window mode, returning from the + // fullscreen browser + document.exitFullscreen(); } return () => { window.removeEventListener("resize", resizeRef.current); diff --git a/src/mmu.rs b/src/mmu.rs index 78f9e36b53b8d755b7b44b821904735c95ca4321..c18e1f7c8e5fc6021b9f3a148c9f08e98830be82 100644 --- a/src/mmu.rs +++ b/src/mmu.rs @@ -26,8 +26,8 @@ pub struct Mmu { rom: Cartridge, /// Flag that control the access to the boot section in the - /// 0x0000-0x00fe memory area, this flag should be unset after - /// the bool sequence has been finished. + /// 0x0000-0x00FE memory area, this flag should be unset after + /// the boot sequence has been finished. boot_active: bool, boot: [u8; BOOT_SIZE],