Baseflow / Baseflow/XamarinMediaManager
Replace conditional compilation with partial classes
- Dominant language
- C#
- Stars
- 763
- Forks
- 299
- PR merge metrics
- No merged PRs in 30d
Description
## 🏗 Enhancement Proposal
The library today uses partial compilation to execute code for a specific platform.
This is hard to debug as each platform might use different classes and methods to do the same thing as other platforms.
### Pitch
I propose to move to [partial classes](https://learn.microsoft.com/en-us/dotnet/maui/platform-integration/invoke-platform-code?view=net-maui-7.0#partial-classes-and-methods) for a cleaner class structure, easier debugging and easier future contributions to the project in the future.
### Platforms affected (mark all that apply)
- [x] :iphone: iOS
- [x] :robot: Android
- [ ] :checkered_flag: WPF
- [x] :earth_americas: UWP
- [x] :apple: MacOS
- [x] :tv: tvOS
- [ ] :monkey: Xamarin.Forms
Contributor guide
Research direction
No files, tests, or entry points are named. Begin by mapping the current conditional-compilation implementations for iOS, Android, UWP, MacOS, and tvOS, then review the linked partial-classes guidance. Done means those affected platforms use the proposed partial-class structure without changing the platforms explicitly excluded.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- desktop-dev, mobile-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100