Skip to content

Add cross-platform settings and application shell - #1

Closed
whatever-industries wants to merge 2 commits into
superg:mainfrom
whatever-industries:feature/cross-platform-launcher-ui
Closed

whatever-industries wants to merge 2 commits into
superg:mainfrom
whatever-industries:feature/cross-platform-launcher-ui

Conversation

@whatever-industries

@whatever-industries whatever-industries commented Sep 1, 2026

Copy link
Copy Markdown

Summary

  • add a persistent SDL3 and Dear ImGui application shell with one configured external asset root
  • automatically launch a valid saved root and show only a compact configuration prompt when setup is missing or the game is stopped
  • add a separate settings window for game assets, display, audio, subtitles, keyboard, and gamepad controls
  • launch automatically after successful asset selection, revalidation, or disc import; restart an active session when its root changes
  • provide native macOS Settings, Controls, and Stop Game menu commands, plus an Open Settings button and F10/controller access on Windows and Linux
  • support explicit data roots, direct GAGBoy launch, aspect-preserving window scaling, and clean engine-session teardown
  • package native Windows, macOS, and Linux metadata and multi-resolution application icons
  • pin frontend dependencies and extend release-package audits and documentation

Compatibility

  • keeps existing CDF, SFS, save, and freegag.ini formats
  • keeps user-supplied game data external and never downloads or deletes it
  • preserves the existing SDL3 renderer and extractor CLI
  • migrates older frontend preferences by retaining only the previously selected asset root

Validation

  • macOS Debug build
  • C++ formatting checks
  • GitHub Actions workflow parse
  • macOS plist, bundle-resource, and Dock icon checks
  • ICNS, ICO, and Linux icon-resolution validation
  • CPack archive-content check
  • normal configured-root auto-launch
  • native Stop Game transition to the compact configuration prompt
  • Settings access from the prompt and macOS application menu
  • manual game, settings, controls, resize, and relaunch testing with prepared GAG assets
  • git diff whitespace check

The repository currently defines no CTest targets.

@coderabbitai

coderabbitai Bot commented Sep 1, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Team

Run ID: c8bc9838-5af1-4128-9424-fe2935b7b4c4


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@whatever-industries whatever-industries changed the title Add cross-platform launcher and settings UI Add cross-platform settings and application shell Sep 1, 2026
@superg

superg commented Sep 7, 2026

Copy link
Copy Markdown
Owner

I reimplemented timer fix and downloaded high res icon for a later inclusion, the other changes are discarded.

@superg superg closed this Sep 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants