Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implemented starting phase of DsHidMini v3 ControlApp (#317)
* Removed global .net 5.0 sdk requeriment * Basic implementation of DsHidMini v3 ControlApp * Changed how the Config. Manager's Profile List is accessed * Made CreateNewProfile method return the created profile * Renamed method * Made it so setting a new profile does not require re-building profile list * Added device's driver version to info tab * Simplified title of Devices page * Added link to troubleshooting website in Devices page * added comments * Renamed headers of settings groups * Refactored code * Added comments * Removed FontAwesome nuget and references * Re-introduced Last Pairing Status symbol in viewmodel * Re-introduced genuine icon status in ViewModel * Added status icon placeholder for each line of info in Device Info * Added Unknown Hid Mode to Manager's SettingsContext Enum * Implemented verifying expected Device's Hid Mode in config. manager * Refactored code * Replaced Device's expected hid mode variable with method * Added check for mismatching current HID Mode * Added checks for genuine and last pairing attempt status * fixed incorrect symbol * fixed view not updating correctly * removed redundant word * fixed ButtonsCombo copy method not copying IsEnabled * Removed field * Renamed DeviceSettings' properties * Renamed variables and enums * UI tweak * Commented out genuine check * Start implementation of App's main model * Added MainModel as a service * Removed HostRadio and ConfigManager services * Initial implementation of ConnectedDeviceManager * Fixed bug with ButtonsCombo copyCombo method * Fixed bug when copying settings in Wireless SubSettings * Creaded ViewModel for ButtonsCombo * moved ButtonCombo validation to DshmConfig translation proccess * fixed typo * removed redundant line of code * Removed setting LED authority based on HID mode * fixed logic on preventing conflitcs in DS4W mode * Changed icon on profile update snackbar message * Fixed typo * Removed workaround for combobox not updating accordingly to property value * Update MainWindow.xaml.cs * removed comment * Fixed ButtonsCombo combobox not updating correctly when selecting repeated buttons * Renamed class and file * made DisconnectDevice method return success status * renamed method * made it so Devices List is only not null if devicelistener is active * Made device in DeviceViewModel accessible via get only property * Implemented verifying Hid Mismatch for connected controllers * fixed bug * Added message for devices with their hid modem mismatched * Tweaked Devices list item template * Added placeholder for device warning status in devices list * UI tweaks * Added placeholder for hid match warning * UI change * Limited profile name to 100 characteres * UI tweaks * Fixed preventing blank name for profile * UI changes * Save/Load DshmConfigUser from ProgramData/ControlApp folder * Changed Hid Mismatch dialog * Fixed missing file * Updated Nefarius.Utilities.DeviceManagement nuget * Start implementing serilog to file * Fixed crash on BT hostradio not active * Changed log minimum level to debug * Added logging to DshmDevMan * [DshmConfigManager] Added logging * Fixed debug message conditions * Tweaked log message * Added logging to JsonDshmUserData * Added logging to DshmConfig * Added logging to DshmConfigSerialization * Only update global profile mark if new global was set * Added logging to ProfilesViewModel * Added logging to ProfileViewModel * Added logging to DevicesViewModel * Added log message to ProfileViewModel * Added logging to DeviceViewModel * Update LockState of settings VM groups on constructor * Commented line out * Lock Leds and Rumble settings if in SXS mode * Fixed bug * Fixed method not executing on blank PropertyChanged * Tweaked log message * Tweaked log message * Added ExpectedHidMode property * Refactored code * Tweaked log message * Added placeholder for "restart as admin" btn * Temporarely disabled debug log * Refactored code * Fixed comment * Moved LeftMotorResc(...) range validation to ViewModel * Moved all DeviceSettings to Driver format convertion to a single function * Added property to DeviceViewModel * Device settings editor will only be shown in Devices page if in custom mode * Refactored code * Refactored code * Removed empty line * fixed typo * Implemented device property to app HID mode dictionary * Refactored code * fixed typo * Moved driver to app dictionary * Tweaked text * Added class for general app state logic * Implemented restarting app as admin from main window * Updated WPF-UI to v3.0.4 (stable) * Implemented reconnect HID mismatche devices on prompt confirmation * Show MessageBox if failing to reconnect one or more devices * Tweaked message * Fixed dark mode theme * Show MessageBox if restarting USB device without admin rights * Changed power cycling button icon depending on device connection type * Replaced power cycling attempt messagebox with snackbar message * Tweaked snackbar message * Deny apps/games from controlling LEDs by default * Tweaked message * Tweaked profiles page menu * Format custom pairing address if valid * Only accept valid characters for custom pairing address, truncate string if too big * Show current Global profile in Device Settings View * Removed leftover code * Set max length for device custom pairing address textbox * Changed connection type icon position * Updated Button Combination App To Driver converstion * Renamed button enums * Updated default value for QuickDisconnect Hold Time * Updated default value for AltRumbleMode Toggle combo * Changed HoldTime and IdleDisconnectTime to ms * Replaced individual combo buttons with array * Removed Button.None * Intialize Device custom pairing address as empty instead of null * Fixed Alt rumble toggle combo default value * Initialize _customPairingAddress with empty string on Device VM * Fixed time conversion in Button Combo VM * Updated dshm config file variables to match the ones expected by the driver * Set maximum value of On and Off custom LED portion to 255 * fixed CycleDuration convertion * Fixed Leds CopyCustoms method not copying OffPeriodCycles * Changed variable type from byte to int * Tweaked custom LEDs view * Removed comment * Reworked LEDs App to Driver conversion * Updated App to Driver LED convertion to match driver * Updated App to Driver LED conversion to properly set static LEDs * Refactored code * Tweaked General Rumble UserControl * Renamed variables to match driver side * Restructe driver format * Renamed class * Renamed variables to match what driver expects * Renamed variables * Rename variable * fix setting conversion * Always write to DisableRight and DisableLeft motors on conversion * Always translate toggle combo variables if combo is enabled * Add enums for DevicePairingMode * Add property to DshmDeviceSettings * Add device pairing mode translation dictionary * Translate device pairing mode when updating dshm driver config * Renamed property * Start Implementing PairOnHotReload config * Add property * Implement property in device VM * Set host address in view to unknown if last host request failed * Add command for triggering hot pairing * Format mac address when setting property * Add contentDialogService to Device VM * refactored * Add using directive * Show dialog when triggering pairing * Updated view * Inject _contentDialogService on DeviceVM construction * Update dshidmini.sln * Safely handle user data deserialization errors * Update dshidmini.sln * Updated dependencies * Refined logger definition * Removed legacy code Replaced outdated URL * Update .gitignore * Added publish profile * Added README * Update release-win-x64.pubxml * Added control app publishing to CI * Update appveyor.yml * Update ControlApp.csproj * Do not run CA on CI * Changed control app publish path * Removed DSHMC from build config * Allows setting same button on button combos --------- Co-authored-by: Benjamin Höglinger-Stelzer <[email protected]>
- Loading branch information