Commit Graph

28 Commits

Author SHA1 Message Date
Zephyron
6d1a4be09b feat: Add PC setup wizard with platform-specific paths
Implement first-run setup wizard for PC with DuckStation-style UI.
Includes installation type selection, keys/firmware installation,
game directory configuration, and platform-aware path detection
for Windows, Linux, and macOS.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-11-12 16:10:15 +10:00
Zephyron
a4e70c51d9 Add PGO indicator to main window title and about dialogue
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-11-12 15:09:28 +10:00
Zephyron
09f8c3a643 feat(ui): add per-game cheat management tab with bulk toggle controls
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-11-07 19:17:07 +10:00
Zephyron
d2f2d50e28 build: add Qt6 TLS plugin copying to CopyCitronQt6Deps
- Configure Qt6_TLS_DIR and TLS destination paths
- Copy TLS plugins using windows_copy_files utility
- Support Debug and Release configurations

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-11-01 23:17:54 +10:00
Zephyron
3d0ccc1db1 Fix Windows auto updater with deferred update helper and TLS support
Windows auto updater failed due to:
1. File locking - can't overwrite running .exe files
2. Missing Qt 6 TLS plugins - can't connect via HTTPS

Solution:
- Implement helper batch script that applies updates after app exits
- Automate TLS plugin copying in CMake (qschannelbackend.dll, qopensslbackend.dll)
- Add enhanced SSL debugging and error messages

Windows updates now work. Linux continues to work as before.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-11-01 21:56:37 +10:00
Collecting
5a7c572292 revert ff51046d16
revert fix: FFmpeg

Testing for CI due to Android & Windows failing, similar issue.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 11:41:33 +00:00
Collecting
ff51046d16 fix: FFmpeg
Testing for CI due to Android & Windows failing, similar issue.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 11:16:33 +00:00
Collecting
92fdc23da7 fix: title_ids.h
Accidentally removed, now back.

Signed-off-by: Collecting <collecting@noreply.localhost>
2025-10-29 11:07:24 +00:00
collecting
8db5c0bd83 feat: Controller Overlay 2025-10-29 05:19:38 +00:00
Zephyron
cbfa876fb0 refactor: extract game title IDs into TitleID utility class
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-29 11:16:18 +10:00
collecting
8050dc0cd2 Edit CMakeLists.txt 2025-10-25 02:12:01 +00:00
collecting
339d78cd08 fix: Autoupdater 2025-10-24 10:43:27 +00:00
collecting
ee47c4d095 feat: Add multiplayer_room_overlay files 2025-10-24 00:05:32 +00:00
Zephyron
c98d253040 cmake: Auto-create user directory for portable mode
Suggested-by: dr.stug@citron-emu.org
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-10-08 16:21:14 +10:00
collecting
0386af7a17 feat: Add GPU & CPU Temperatures 2025-10-07 12:44:46 +00:00
collecting
0b498caece Include theme.h 2025-10-04 00:33:32 +00:00
Zephyron
4e377dde5a feat: Implement Qt6 migration with aqtinstall 3.3.0
- Migrate from Qt5 to Qt6.7.3 using aqtinstall v3.3.0
- Add comprehensive Qt6 API compatibility updates
- Implement responsive UI with High DPI scaling support
- Add MSVC runtime library configuration for consistency
- Update touch/mouse event handling for Qt6 APIs
- Fix locale handling (countryToString → territoryToString)
- Update string size methods (count() → size())
- Remove deprecated Qt5 high DPI attributes
- Add new CopyCitronQt6Deps.cmake for Qt6 dependency management
- Update CMake configuration for Qt6-only approach
- Add aqt_config.ini with mirror configuration for reliable downloads

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-09-26 19:42:30 +10:00
collecting
004029669d Edit CMakeLists.txt w/ Citron Updater 2025-09-24 04:33:51 +00:00
Zephyron
e05296c798 fix: make updater functionality conditional with CITRON_USE_AUTO_UPDATER option
- Add CITRON_USE_AUTO_UPDATER CMake option (default: OFF)
- Move updater source files to conditional target_sources block
- Add _WIN32 definition for proper moc processing on Windows
- Fixes C2664 compilation error with UpdaterDialog::OnUpdateCompleted

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-09-23 15:36:39 +10:00
collecting
e3edcdf25b Link Qt Application against Qt Network Module 2025-09-23 01:08:07 +00:00
Zephyron
192cb91286 feat: add VRAM monitoring overlay with modern UI
- Clean dark-themed overlay with real-time VRAM usage display
- Memory breakdown (Buffers, Textures, Staging) with color coding
- Interactive graph with 2-minute history and leak detection
- VRAM mode indicator with special highlighting for Insane mode
- Draggable interface with persistent positioning
- Menu integration with keyboard shortcut support
- Safe Vulkan renderer integration with exception handling

Files: CMakeLists.txt, main.cpp, main.h, main.ui, uisettings.h, vram_overlay.cpp, vram_overlay.h
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-09-14 15:49:27 +10:00
Boss.sfc
01757c21ea fix: Linux compilation
There were linking errors

Signed-off-by: Boss.sfc <boss.sfc@citron-emu.org>
2025-08-23 18:53:24 +07:00
Boss.sfc
f9758f1770 feat: Updated MoltenVK
Signed-off-by: Boss.sfc <boss.sfc@citron-emu.org>
2025-08-08 16:02:09 +07:00
Zephyron
93a48ad682 feat: enhance performance overlay with frame graph and draggable UI
- Add real-time frame time graph with min/avg/max statistics
- Implement draggable overlay functionality with cursor feedback
- Modernize UI with Material Design colors and improved typography
- Fix crash issues by throttling performance data updates
- Ensure FPS and frame time consistency
- Add proper error handling and validation
- Increase overlay size to accommodate new graph feature

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-07-27 20:50:57 +10:00
Zephyron
9ef1c76a2c feat: Add automatic update system with background checking
Implement a complete auto-updater system for Citron with the following features:

- Add UpdaterService class for handling update checks, downloads, and installations
- Add UpdaterDialog with progress tracking and user interaction
- Support both .zip and .7z archives with Windows PowerShell fallback
- Automatic background update checking on startup (3-second delay)
- Silent notifications when updates are available
- Manual "Check for Updates" menu option in Help menu
- User setting to enable/disable automatic update checks (enabled by default)
- Graceful error handling with detailed logging
- Restart functionality after successful updates
- Libarchive integration for cross-platform archive support

The system uses HTTP URLs to bypass SSL library compatibility issues and
provides a smooth user experience with minimal interruption during automatic
checks. Manual updates show a full dialog with progress tracking and changelog
information.

Fixes update distribution workflow and keeps users informed of new releases.

Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-07-11 16:22:28 +10:00
Zephyron
b2d9cf4a01 chore: update project branding to CITRON
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-05-06 16:11:33 +10:00
Zephyron
5e16e20427 chore: update project branding to Citron
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-05-06 16:08:59 +10:00
Zephyron
bfb82e577c chore: update project branding to citron
Signed-off-by: Zephyron <zephyron@citron-emu.org>
2025-05-06 16:06:48 +10:00