- Fix double scaling in getSubtitleStyle causing position misalignment
- Improve edge detection logic for better drag precision
- Add time boundary constraints to prevent negative/overflow values
- Refactor drag handlers with helper functions for better maintainability
- Ensure subtitle blocks align with timeline markers at all zoom levels
* feat(import): auto-detect and import new videos from the import directory
- Scan the configured import directory for newly added video files
- Automatically enqueue/import detected files into the application library
- Extend config and app initialization to support import directory settings
- Update video/config handlers to expose and trigger the import flow
* refactor(import): improve video import and conversion workflow
- Optimize auto-import loading state management with proper polling
- Separate large file (>500MB) async conversion from small file sync conversion
- Extract reusable helper functions for file cleanup and thumbnail generation
- Enhance UI progress display for large file conversions
* feat(import): add batch video import functionality
- Add batch_import_external_videos API endpoint with progress tracking
- Support multiple file selection in import dialog
- Display batch import progress with current file information
* feat: improve video import on headless mode
- Enhance batch video import workflow and progress tracking
- Improve HTTP server API structure and error handling
* fix(video): prevent OOM in headless mode by using fixed 64KB buffers
- introduce sanitize_filename_advanced with tests
- use fixed 64KB buffer and 1% progress reporting
* fix: resolve compilation warnings and improve SSE reliability
- Add feature-gated compilation for platform-specific functions
- Enhance SSE error handling and connection stability
- Increase broadcast channel capacity and optimize keep-alive timing
* feat: add universal video clipping support
- Allow clipping for all video types including imported and recorded videos
- Support secondary precise clipping from rough clips
- Fix video status validation to include completed recordings (status 0 and 1)
* feat: integrate video clipping into player and enhance subtitle timeline
- Optimize subtitle progress bar styling and timeline interaction
- Unify video clipping workflow across all video types
- Fix build issues and improve code quality with safer path handling
* feat: improve video clipping and UI consistency
- fix: resolve FFmpeg clipping start time offset issue
- fix: enhance clip selection creation logic
- style: unify interface styling and colors
- feat: complete HTTP APIs for headless mode
* fix: improve headless mode file handling and path resolution
- Add multipart file upload support for external video import in headless mode
- Fix file path resolution issues for both video files and thumbnails
- Make convertFileSrc and convertCoverSrc async to properly handle absolute path conversion in Tauri
* fix: correct video cover size and file size display in GUI import
Fix the cover size when importing videos
Fix file size display during GUI-side import
* fix: account tutorial link
* feat: encoding-fix option for clip
* fix: clip on stream
* fix: danmu encoding offset
* fix: clip when no range provided