Commit graph

34 commits

Author SHA1 Message Date
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
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
6dfc0906ac Refactor launcher library importing, manifests
Switched the library importing in the launcher to work based on a queue. As a new game is added to the queue, it should find any related data and also add it to the queue. This should result in an easier to maintain importer while reducing the load on the launcher's DAL. This may result in more RAM usage while importing. Local manifests have also been refactored to match manifests in import/export LCX files, removing the old manifest format. This is a large breaking change that will probably break existing game installations. A migration will probably have to be created.
2025-11-29 18:24:27 -06:00
Pat Hartl
e6c12b4809 Refactor script debugging
Instead of providing delegates to a ScriptClient singleton, script execution now relies on dependency injection for debugging. This can be handled by registering an implementation of IScriptDebugger. Multiple script debuggers are supported. These changes required the creation of a PowerShellScriptFactory to handle DI of the service provider to the script.

In the case of LANCommander, "debugging" scripts really just gives an opportunity for the application to break after a script's execution and provide a poor-man's pty. This could be expanded upon in the future to hook directly into PowerShell's debugging functionality, but would require a substantial refactor to script execution.
2025-11-26 01:09:52 -06:00
Pat Hartl
a549f06a85 Fix service registration in CLI. Create abstraction for external script runners. 2025-11-23 20:54:56 -06:00
Pat Hartl
d6577564db Move launcher settings to separate assembly 2025-11-23 20:53:45 -06:00
Pat Hartl
1983cf4bb3 Apply database migration on startup, add default install directory 2025-11-06 20:15:05 -06:00
Pat Hartl
ab73e9c4e0 Rework SettingsProvider 2025-10-02 19:41:47 -05:00
Pat Hartl
5cab1f3618 Remove old SettingsService, replace with Options pattern 2025-09-29 19:49:09 -05:00
Pat Hartl
d875377f15 Rename SDK services -> clients, implement new configuration, use dependency injection for clients 2025-09-24 20:58:23 -05:00
Pat Hartl
209208632d Fix importing using transaction 2025-09-05 17:38:05 -05:00
Pat Hartl
91bead2ed7 Have launcher use AppData/Local if it has no write access to its base directory
Fixes #292
2025-08-18 17:49:17 -05:00
RattleSN4K3
b6df63e423 No initial login on startup (before UI is shown) 2025-06-15 18:08:50 +02:00
Pat Hartl
98bfe90605 Show import progress in popover 2025-02-06 20:54:03 -06:00
Pat Hartl
f1d69cdb59 Add users and libraries 2025-01-19 00:06:44 -06:00
Pat Hartl
cf7e81ba54 Detect disconnection from server, automatically go into offline mode 2025-01-18 20:25:39 -06:00
Pat Hartl
11a2562429 Fix offline mode 2025-01-15 02:28:11 -06:00
Pat Hartl
b659012270 Fix missing bulk import extension 2025-01-14 17:39:47 -06:00
Pat Hartl
304f308474 WIP refactor of game importing 2025-01-12 02:54:41 -06:00
Pat Hartl
be86bcb261 WIP depot view and import 2024-11-12 02:35:28 -06:00
Pat Hartl
9d239a0066 Add sorting to launcher
Implements #122
2024-10-30 18:53:05 -05:00
Pat Hartl
27d6ea6486 Add ability to modify a game's installation
- DownloadService has been renamed to InstallService
- In the library item context menu, there is a new option "Modify". This allows the user to selsct any additional addons to install as well as move the game to a separate storage location.
- Fixed issue where transfers were being double updated for installs
- Force UI update whenever queue is updates
2024-10-26 15:48:47 -05:00
Pat Hartl
b281919ab7 Import media if missing, refactor application login
Media is now imported if its given an ID that doesn't exist in the database. This should almost never happen, but it's there if needed.

The login process for the launcher has been refactored to do some initialization steps on application start. This should include pulling down the profile avatar and validating connection on start.

Fixes #124
2024-10-06 17:11:35 -05:00
Pat Hartl
f8b60d1cf1 Avoid process spawning loops when executing as admin 2024-09-26 22:57:36 -05:00
Pat Hartl
b2ce162dca Add logger to SDK client on launcher start 2024-09-25 20:27:23 -05:00
Pat Hartl
9dbd76834f Fix default directories for macOS/Linux 2024-09-19 18:16:41 -05:00
Pat Hartl
05547cf4db Moved scaffolding/migrations to service, add to CLI 2024-09-18 20:40:41 -05:00
Pat Hartl
66b0a3b1ec Fix initialization of command line application 2024-09-18 19:12:55 -05:00
Pat Hartl
0d3412cb9d Add ability to allow a choice of install locations 2024-09-12 19:09:13 -05:00
Pat Hartl
b35d0f52d3 Move debug flag to SDK ScriptService 2024-08-16 18:36:17 -05:00
Pat Hartl
85e47f5d3a Run scripts as admin using CLI elevation 2024-08-08 18:00:41 -05:00
Pat Hartl
e055514811 Split models and services into separate projects 2024-08-07 18:48:13 -05:00