Commit graph

226 commits

Author SHA1 Message Date
Pat Hartl
b034736822 Avoid downloading depot images to disk, improve UI jank
Fixes #427
2026-07-04 00:14:33 -05:00
Pat Hartl
e287d3ce8a Refresh game action bar after tool install
Ref #414
2026-07-02 20:34:22 -05:00
Pat Hartl
04a715e9cb Fix install of games/addons that have no dependent games 2026-07-01 19:37:04 -05:00
Pat Hartl
e485ad1865 Fix reconciliation of library games based on user libraries enabled/disabled
Ref #423
2026-06-27 18:38:42 -05:00
Pat Hartl
b21efc63d0 Track tools per game
Ref #414
2026-06-27 11:51:55 -05:00
Pat Hartl
fb0df46572 Uninstall tools when uninstalling game
Ref #414
2026-06-27 11:33:39 -05:00
Pat Hartl
0973c00f1e Fix removing games from library, consolidate flyout menu 2026-06-25 19:46:30 -05:00
Pat Hartl
6b2610a200 Rework Tool installation / action resolution
Amends the tool installation to use game install directory and correctly populate actions. Tools previously used an undocumented/unpopulated/inaccessible global install directory. This has been changed to use the game's install directory. Uninstall scripts are also now executed for tools when the game is uninstalled.

Fixes #414
2026-06-21 21:16:45 -05:00
Pat Hartl
000b12ca1c Fix error in launcher when tool actions are not defined 2026-06-20 04:26:04 -05:00
Pat Hartl
b27b1f0ad4 Only display notification when entire install chain is complete 2026-06-20 04:25:01 -05:00
Pat Hartl
07255ab552 Update Notify.NET, fix progress in taskbar 2026-06-14 19:40:47 -05:00
Pat Hartl
4fd268d9c3 Check redistributables for updates 2026-06-10 21:51:12 -05:00
Pat Hartl
f7972d6a48 Fix "Update" button, update process 2026-06-08 19:29:09 -05:00
Pat Hartl
62c03621a3 Rework update functionality as an additional download workflow 2026-06-08 19:00:56 -05:00
Pat Hartl
4ffa52cc2a Fix media download on import 2026-05-26 00:14:48 -05:00
Pat Hartl
9849bf23f7 Fix check for newer saves on server 2026-05-25 04:16:51 -05:00
Pat Hartl
a599e62ade Sync play sessions on import 2026-05-25 02:47:08 -05:00
Pat Hartl
6e2e0542d6 Add full set of command line verbs 2026-05-23 22:58:10 -05:00
Pat Hartl
e56371cd7c Add support for external IDs beyond IGDB 2026-05-14 00:30:45 -05:00
Pat Hartl
5ad55faa5a Add support for tools 2026-05-14 00:29:48 -05:00
Pat Hartl
879885c640 Add alert message if action failed to start 2026-05-07 23:12:00 -05:00
Pat Hartl
232f86ba85 Refactor launcher game importing
- Game importing happens on a separate thread to avoid UI blocking
- Server requests per-game are done in parallel to cut down on import times
- Media downloading is done in parallel
- Library import progress shown in title bar
- Enabled WAL mode for SQLite for better performance
- Fix potential issues with deferred imports causing infinite loops or lockups
2026-04-27 22:45:02 -05:00
Pat Hartl
f49905983f Fix installs getting locked after install, uninstall, then install again 2026-04-22 22:43:21 -05:00
Pat Hartl
538d6b4676 Fix download queue progress 2026-04-18 18:55:28 -05:00
Pat Hartl
9a7cadf1ca Add better logging for installs 2026-04-17 23:52:22 -05:00
Pat Hartl
eaaaf39b8d Refactor install process to use major/minor task queue
Tasks are broken down into major and minor tasks. Major tasks are like install game, redistributable, or tool. These are reported as individual tasks in the download queue. Minor tasks are running of a script, downloading saves, extracting/downloading, etc.
2026-04-17 22:24:47 -05:00
Pat Hartl
c9fb738a21 Update to .NET 10 2026-04-10 00:54:43 -05:00
Pat Hartl
91a56c5d3b Fix uninstall -> reinstall not working correctly 2026-04-08 18:07:32 -05:00
Aaron Powell
3115ed4ea3 Merge branch 'main' into avalonia-launcher
# Conflicts:
#	Directory.Packages.props
2026-03-21 14:15:00 +11:00
Pat Hartl
a9d32c6bef Open debug window for elevated scripts 2026-03-15 17:06:37 -05:00
Pat Hartl
2e46c6ecc5 Launcher: Only import games since last import 2026-03-09 22:12:57 -05:00
Pat Hartl
23678107e8 Fix downloading updates to user avatar 2026-03-08 14:50:42 -05:00
Pat Hartl
d417ce264e Fix downloading avatar 2026-03-04 19:03:57 -06:00
Pat Hartl
46bbf85093 First pass of adding tool installation to launcher 2026-02-10 18:04:49 -06:00
Pat Hartl
4474164e9b Split ScriptClient into partials 2026-02-10 17:34:35 -06:00
Pat Hartl
1936f50599 Remove singular Client service for DI clients 2026-01-24 15:32:40 -06:00
Aaron Powell
8d53430ff8 Add script debugging console for Avalonia launcher
- Create ScriptConsoleControl for displaying script output and interactive input
- Create PowerShellConsoleWindow to host the script console
- Wire up ScriptDebugger events to console control for real-time output
- Add debug scripts menu to GameActionBarView (visible when EnableScriptDebugging=true)
- Scripts run via SDK's ScriptClient and stay interactive after completion
- Fix MediaImporter.ExistsAsync to check database record instead of file existence
- Remove Iciclecreek.Avalonia.Terminal dependency, revert Avalonia to 11.2.3
2026-01-23 15:05:59 +11:00
Aaron Powell
b45944ebab fix: Use async database check for IsInLibrary status 2026-01-19 22:12:18 +11:00
Pat Hartl
58b09ab378 Remove use of Client in InstallService 2026-01-18 04:40:18 -06:00
Aaron Powell
a8184f763e Merge branch 'main' into refactor/remove-window-service 2026-01-12 17:15:35 +11:00
Aaron Powell
869b7ea466 Fixing media importer and adding importer robustness
ImportContext wasn't being set on the importers which caused problems during the import process. Fixed that and added a bunch more logging around the place so we can get better tracing into what's happening through the import pipeline
2025-12-19 11:14:43 +11:00
Aaron Powell
ef12bc58c9 Missing service registration 2025-12-19 10:35:50 +11:00
Pat Hartl
5b0abac404 Merge branch 'main' into development 2025-12-15 23:15:40 -06:00
Aaron Powell
a3b840ca36 refactor: Remove WindowService abstraction layer
- Removed WindowService.cs which was just a thin wrapper around PhotinoBlazor

- Removed WindowOptions, WindowType, and WindowRef models (unused or part of incomplete window tracking)

- Updated Program.cs to directly use PhotinoBlazorAppBuilder

- Service registration now done through direct extension method calls

- Window configuration uses existing extension methods in Startup/Window.cs

- Simplified initialization flow with clearer code structure

- All functionality preserved, just more transparent and maintainable
2025-12-12 11:27:13 +11:00
Pat Hartl
88301d9c79 Move config/user files to Data directory 2025-12-11 01:58:28 -06:00
Aaron Powell
8c436b3d47 Consolidating to consistent logging across all apps 2025-12-11 16:18:33 +11:00
Pat Hartl
ccb7bebd48 Merge branch 'main' into development 2025-12-10 21:49:20 -06:00
Pat Hartl
17fa802c19 Implementation of script debugger component with RPC via SignalR 2025-12-10 20:55:38 -06:00
Aaron Powell
e48db47603 Event handlers weren't initialised, causing null ref exception on launcher start 2025-12-11 11:57:35 +11:00
Pat Hartl
b67d47ce51 Update game actions/save paths if installed version is latest version 2025-12-05 21:24:30 -06:00