- Rename AcquireNewProfile to CreateProfileAsync
- Return status result of CreateProfileAsync
- Abort processing on profile creation failures
- Localize error messsages
- Add support for new GetProfileList schema
- Add CacheablePath function to abstract and reuse path generation logic
- Serialize LoadCacheable content in human readable form
- Move public-profile cache into like named folder
- Move public-profile items into oem specific folders
- Reuse LoadOemProfileAsync for persistence instead of custom implementation
- Issues MatterHackers/MCWS#72, MatterHackers/MCWS#84
- Add ChangeToPanel implementation that takes panel type param
- Remove WizardPanel constructors that take WizardWindow params
- Use initializer syntax
- Remove dead code
- Remove problematic ReloadAll calls
- Remove unused properties from ApplicationView
- Rename CompactApplicationView to TouchscreenView
- Rename ResponsiveApplicationView to DesktopView
- Move abstract ToggleTopContainer() specific to TouchscreenView
- Remove unused HideTopContainer implementations
- Conditionally compile invocation/assignment of ApplicationMenuRow
- Migrate single setting from PrinterSettings "PublishBedImage" to SliceSettings
- Remove PrinterSettings class
- Import "PublishBedImage" during ImportPrinters
- Remove code that doubles the size of the splitter bar when collapsed
- Fix incorrect path to "config.ini"
- Prevent accidental construction of ProviderSQLite objects inside of ProviderSQLite constructor
- Initialize .baseLibraryCollection during rootLibraryCollection construction to prevent null reference errors
caused by access before assignment
- Remove AddItem -> AddStlOrGcode -> AddItem recursion - Fixes crash due to concurrent writes to default.mcp
- Add sqlite async methods and supporting logic to ensure disk IO operations aren’t run in parallel
- Consolidate logic around sample part extraction from StaticData from various areas into a single method
- Rename that method from SyncCalibrationFilesToDisk to EnsureSamplePartsExist
- Break apart the large LINQ query into discrete and easier to understand steps
- Add shared base class for sqlite backed library providers and resuse common code in base
- Guard against cache deletion during one-time library initialization
- Discard StreamReader cases in favor of ReadAllText - Ensures .Dispose is always called and is ultra succinct
- Purge orphaned code