Refactor Big Picture Mode to use main window

Big Picture Mode now launches in the main application window instead of a separate Electron window. This reduces resource usage, prevents SteamOS desktop mode conflicts, and enables seamless switching between Desktop and Big Picture modes. Updated documentation, main process logic, and preload API to reflect the new architecture.
This commit is contained in:
2026-01-01 12:17:35 +13:00
parent 76f5ef188a
commit 1b71a4001d
3 changed files with 101 additions and 81 deletions
+12 -2
View File
@@ -2,6 +2,13 @@
Nebula Browser includes a **Big Picture Mode** - a controller-friendly, console-style interface designed for Steam Deck, handheld devices, and living room setups.
## 🚀 Single Window Architecture
Big Picture Mode now opens **in the main window** instead of a separate window. This design:
- **Keeps resources low** - No extra Electron window process
- **Prevents SteamOS conflicts** - When auto-launching in Gaming Mode, Steam won't create a desktop mode alongside, preventing Steam from overriding controls to emulate keyboard/mouse
- **Seamless switching** - Navigate between Desktop and Big Picture modes smoothly
## ⚠️ Steam Deck: Disabling Mouse Emulation
If Steam is emulating mouse/keyboard input with the joysticks (overriding native controller support), you need to configure Steam Input:
@@ -129,10 +136,13 @@ const suggested = await window.bigPictureAPI.isSuggested();
// Get screen information
const info = await window.bigPictureAPI.getScreenInfo();
// Launch Big Picture Mode
// Check if currently in Big Picture Mode
const isActive = await window.bigPictureAPI.isActive();
// Launch Big Picture Mode (navigates main window)
await window.bigPictureAPI.launch();
// Exit Big Picture Mode
// Exit Big Picture Mode (navigates back to desktop UI)
await window.bigPictureAPI.exit();
```