Skip to content

Add module state switching to the Module Registry - #374

Open
moewhite19 wants to merge 9 commits into
benaclejames:masterfrom
moewhite19:modify
Open

Add module state switching to the Module Registry#374
moewhite19 wants to merge 9 commits into
benaclejames:masterfrom
moewhite19:modify

Conversation

@moewhite19

Copy link
Copy Markdown

Adds a per-module state selector to the Module Registry so tracking modules can be mixed or switched without uninstalling.

Each installed module can be set to one of:

Enabled
Disabled
Eyes Only
Face Only

Disabled modules are skipped on load; Eyes Only / Face Only restrict which tracking slot a module may claim. The module list shows the current state and marks pending changes until the app is restarted.

- Each installed module can be enabled/disabled as a whole in the Module Registry
- Independent Eye Tracking / Facial Tracking sub-toggles per module
- Sub-toggles are gated by the module's main enable toggle
- Disabled modules are skipped on load; changes take effect after restart
- Show a 'Disabled' badge for disabled modules in the module list
- Refresh toggle state immediately after a module install
- ModuleEnabledState enum: Enabled / Disabled / EyesOnly / FaceOnly (byte)
- Module Registry: single 'Module State' selector instead of 3 independent toggles
- Disabled modules are skipped on load; EyesOnly/FaceOnly gate which slot a module may claim
- Module list shows the localized state badge (incl. Enabled) instead of '(Installed)'
- Badge shows '(old -> new)' while a state change is pending a restart
- List badge updates live via INotifyPropertyChanged after toggling
@benaclejames

Copy link
Copy Markdown
Owner

Generally we do not accept PRs created entirely by Artificial Intelligence. Can you confirm if this is the case with this PR as it has a couple of areas that look as if this may be the case.

Additionally, this PR targets the master branch, but I worry that the moment we merge Avalonia, it'll be broken. Apologies in advance if this is the case as we will be merging avalonia to master in the coming week. You can view the progress of said PR at #372

@moewhite19

Copy link
Copy Markdown
Author

AI was only used at the start to speed up the initial setup – everything after that was manually maintained by me, though the PR description and commits were AI-generated for efficiency.

As for Avalonia – I couldn't get it to run on Steam, so I haven't been able to test it. I think it's better to wait until Avalonia is stable and merged into master, and then I'll continue maintaining the fork accordingly.

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