# Changelog

All notable changes to ClawDeck are tracked here.

## [1.6.0] - 2026-07-06

### Added

- Added a Carousel Size slider (90-120%) to Display settings. It scales the whole carousel composition - cards, spacing, and touch feel together - so the home screen can be larger or denser without changing the rest of the UI scale.

### Changed

- The launch screen now appears the moment you press Play. If the game has a performance profile, the overlay shows exactly what is being applied ("Applying performance profile: 18W / 24W power - 90 Hz display - 60 FPS cap") instead of the system appearing to hang for a few seconds before anything happens.
- Play time now starts counting when the game is actually detected as running, not when the launch begins - launcher startup and profile work no longer inflate the session timer.
- ClawDeck now minimizes to the taskbar instead of disappearing completely when handing off to a quick app, launcher, or running game - one tap brings it back exactly where you left it.

### Fixed

- Game detection is much more reliable. Fixed a bug where games with executable names longer than 25 characters were never detected as running (custom games were especially affected). Detection now also follows launcher hand-offs: when a configured executable or launcher stub starts the real game under a different name and exits, ClawDeck follows the new process instead of getting stuck on "waiting for game" or ending the session early. Launch polling is faster (1.5s) while waiting, and still backs off to ~30s checks once the game is running.
- Fixed custom games losing their SteamGridDB or uploaded cover art on screen after editing launch settings or a performance profile. The artwork was never deleted, but the update wiped it from view until a restart.
- All toast notifications now reliably auto-dismiss. Previously a toast fired near anything that took window focus (file picker, touch keyboard, launching a game or app) could stay on screen forever until tapped, because the toast library pauses its timers while the window is unfocused. Every notification now has an independent dismissal timer; errors linger a little longer (3.5s) so they stay readable, and nothing exceeds 6 seconds.

## [1.5.1] - 2026-07-06

### Changed

- System controls are now fast everywhere: every service shares one persistent native-helper connection, so brightness, volume, battery, WiFi, Bluetooth, and MSI Center reads all respond in a few milliseconds instead of spawning a new process each time.
- MSI Center M reads (performance, controller, and lighting status) now go through the native helper directly, replacing a slow per-call PowerShell path that could take a couple of seconds and occasionally time out.
- The Lighting tab now shows live LED color and status as a clear read-only panel and points to MSI Center M for changes. On the Claw 8 AI+, MSI Center M writes lighting directly to the LED controller, so ClawDeck no longer offers an Apply action that the hardware would ignore.

### Fixed

- Fixed Xbox / Game Pass showing as "not installed" on the Get Games screen: detection now uses a fast registry check that no longer times out on a busy handheld.

## [1.5.0] - 2026-07-05

### Added

- Per-game performance profiles with presets (`Off`, `Indie 10W`, `Balanced 18W`, `AAA 30W`, `Custom`), PL1/PL2 power limits, a display refresh target, and an RTSS FPS cap - applied at launch and restored after the game exits. Editable from the Library context menu and the carousel game options.
- RTSS frame limiter integration: install detection, launch/refresh controls, a global frame cap on the Display settings tab, and per-game caps that only apply when the game executable can be identified.
- Touch support for the home carousel - swipe steps through games with edge resistance, alongside controller and keyboard input.
- Mystic Light LED controls with a live color preview, draft swatch selection, and an explicit Apply step.
- MSI Center M performance controls: User Scenario switching (AI / Manual / Endurance), manual PL1/PL2 sliders with safety floors, and Quick Settings tile management.

### Changed

- ClawDeck now asks for administrator access once when it starts instead of showing an approval prompt every time a power or system value changes.
- System controls respond much faster: the native helper now stays running between requests, cutting brightness, volume, WiFi, and Bluetooth operations from roughly half a second each to a few milliseconds.
- Made the carousel dramatically smoother: touch drags now bypass React rendering entirely, invisible edge cards are no longer animated, and backgrounds settle with a fast crossfade instead of a slow fade-to-black.
- Cached artwork now appears instantly when returning to a page - no more skeleton placeholders or re-fades for images that were already loaded.
- The last background image is preserved across navigation so the home screen never flashes black when you come back to it.
- Power control writes are now guarded while a game is running, the app is unfocused or hidden, or the system is waking from sleep, so ClawDeck never fights MSI Quick Settings.
- Image reads in the main process are now fully asynchronous, keeping input and hardware controls responsive while artwork loads.
- Windows now shows ClawDeck (name, icon, version) in Task Manager instead of Electron.

### Fixed

- Fixed game detection on Windows 11 24H2, where a removed system tool silently broke launch tracking - games are now reliably detected as running, and performance profiles restore only after the game actually exits.
- Disabling an RTSS frame cap no longer launches RTSS unnecessarily.
- Changing UI scale no longer resets unrelated settings such as UI sound volume.
- Non-preset RTSS frame caps (for example 25 FPS) now display correctly in Display settings.

## [1.2.2] - 2026-04-29

### Added

- Added a dedicated `Apps` tab to the Library with the same controller-first flow as Games.
- Added default app entries for `File Explorer`, `Microsoft Edge`, `Windows Settings`, `Microsoft Store`, and `Google Chrome` when available.
- Added the ability to browse for and add more apps to the Library.
- Added `Mark as App` in Library options so misdetected items can be moved from Games into Apps.
- Added per-game launch editing in Library options:
  - Change executable
  - Set working directory
  - Toggle run as administrator
  - Reset non-custom games back to default launch behavior

### Changed

- Upgraded Library app cards to use richer artwork presentation when available instead of only generic icon tiles.
- Improved app icon rendering to prefer higher-resolution real Windows/app icons over placeholder glyphs.
- Preserved imported artwork when moving an item from Games into Apps.
- Made resolution display in Settings accept the device's real current resolution even when it is not one of the original preset handheld values.

### Fixed

- Improved Xbox / Game Pass library detection by scanning real Xbox library roots such as `XboxGames` and `ModifiableWindowsApps`, including additional drives and launcher path overrides.
- Reduced false negatives in status reporting so unsupported or unreadable WiFi / Bluetooth / battery states do not default to misleading disconnected / `0%` values.
- Added battery and WiFi fallbacks for devices where the primary helper path does not report correctly.
- Fixed the blank `Resolution` field in Settings on devices whose current resolution did not match the original hardcoded options list.
