7 Commits

Author SHA1 Message Date
vova 64a337ffe8 Improve LibVLC stability and add external playback host
- Add LibVLCManager singleton for safer LibVLC lifetime management
- Introduce VlcHostClient and VlcHost.exe for external playback via JSON commands
- Enhance VideoPlayer with error recovery and dependency property for SourceUrl
- Implement IDisposable in ProgramsData and ViewModels for better cleanup
- Update NuGet packages: LibVLCSharp to 3.9.6, System.Reactive to 6.1.0
- Add robust error handling and resource disposal throughout
- Improve program guide handling in PlayerViewModel
2026-04-10 14:29:00 +03:00
Vladimir a42ada7f96 feat: Simplify macOS VLC initialization and remove redundant path checks 2026-03-23 10:31:50 +02:00
Vladimir f995625460 feat: Add macOS VLC native bundling and improve UI styling
- Added AsyncImageLoader package for improved image loading.
- Implemented macOS native VLC library bundling with a script to fetch and copy necessary files.
- Enhanced PlayerView UI with updated colors and improved layout for better user experience.
- Refactored media playback logic in PlayerView to handle buffering and errors more gracefully.
- Updated Playlists and Programs views to use consistent styling and improved text colors.
- Introduced a new settings layout with better organization and visual appeal.
2026-03-22 16:58:11 +02:00
Vladimir f0cbf709b6 feat: Enhance button styles and layout across various views for improved UI consistency 2026-03-22 13:25:16 +02:00
Vladimir 36c2970709 Refactor code structure for improved readability and maintainability 2026-03-22 13:19:49 +02:00
Vladimir 689450393b feat: Refactor project structure and add core library
- Migrate shared components from WPF to a new Core library.
- Introduce GroupInfo, M3UInfo, and ObservableViewModelBase classes.
- Implement M3UParser for downloading and parsing M3U files.
- Add ProgramsData for managing program lists and guides.
- Create SettingsModel for application settings management.
- Update project references in solution files.
2026-03-22 13:11:32 +02:00
Vladimir 1e8e444376 feat: Implement Playlists and Programs Management
- Added PlaylistsGroupViewModel to manage playlists and selection.
- Introduced ProgramsGroupViewModel for handling program groups and subscriptions.
- Created ProgramsListViewModel to manage individual program listings.
- Developed SettingsViewModel for user settings including playlist management.
- Implemented TVPlayerViewModel as the main view model coordinating screens and data.
- Added PlayerView for video playback with LibVLC integration.
- Created XAML views for PlaylistsGroup, ProgramsGroup, ProgramsList, and Settings.
- Added sample M3U playlist for testing.
- Documented WPF build instructions and project structure in WPF-BUILD.md.
- Configured global.json for .NET SDK versioning.
2026-03-22 12:11:24 +02:00