flutter_awesome_reels 0.0.5
flutter_awesome_reels: ^0.0.5 copied to clipboard
A powerful, customizable Flutter widget for creating TikTok/Instagram-style vertical video reels with advanced features like caching, analytics, and rich interactions.
0.0.5 #
🎨 Example App Redesign #
- Modern blue-gradient theme for Home and Playground screens
- New gradient feature cards, decorative orbs, and improved typography
- Refreshed buttons and section cards with professional look-and-feel
🔧 Core Playback Improvements #
- Ensure only a single video plays at a time when switching reels
- Pause and detach previous controller on page change and controller switch
- Preloaded controllers are initialized paused to prevent background audio
- Pause off-screen reels via visibility detection
🐛 Fixes #
- Mitigated black-screen-with-audio by guarding rendering until valid video size
- Cleaned up controller listeners on dispose/switch
- Replaced deprecated Color.withOpacity with Color.withValues
0.0.4 #
- Updated README.md to reflect new features and usage examples
0.0.3 #
⚠️ Breaking Changes #
- Multi-Format Video Support: Plugin now supports HLS, MPEG-DASH, and MP4 video sources. This may require changes to your video URLs and backend delivery.
- New Event Callbacks: Added
onPressandonLongPressevent callbacks for advanced interaction handling. Update your widget usage to handle these events if needed.
🎯 Major Progress Bar Overhaul #
-
Perfect Seeking Logic: Complete redesign of video seeking functionality
- Tap anywhere on progress bar for instant seeking
- Smooth drag-to-seek with real-time preview
- Release-to-seek mechanism for better user control
- Maintains playback state correctly (pause during drag, resume after)
-
Enhanced Draggable Thumb: Professional circular progress indicator
- Animated circular dot that grows during interaction
- Proper positioning using LayoutBuilder for accuracy
- Visual feedback with shadows, borders, and smooth animations
- 60px hit area for much easier touch interaction
-
Live Thumbnail Preview: Instagram/TikTok-style seeking preview
- Shows preview window above progress bar during drag
- Displays current time position in real-time
- Smart positioning to stay within screen bounds
- Elegant animations with scale and opacity effects
-
Production-Ready Video Controller: Robust video management system
- Index-based controller tracking instead of unreliable ID-based system
- Preloading and caching for instant video transitions
- Enhanced error handling with retry logic
- Optimized memory management and disposal
🎨 UI/UX Improvements #
- Better Visual Design: Light grey progress bar background for improved visibility
- Responsive Touch Areas: Increased hit areas with
HitTestBehavior.opaquefor better responsiveness - Smooth Animations: Multiple animation controllers for professional feel
- Performance Optimizations: Efficient
ValueListenableBuilderandLayoutBuilderusage
🚀 Crash Prevention & Stability #
- Removed All Loading Indicators: Eliminated stuck "loading..." states
- Robust Error Recovery: Comprehensive error handling prevents crashes
- Controller Lifecycle Management: Proper initialization and disposal
- Video State Tracking: Accurate playback state management
🔧 Technical Improvements #
- Flutter Analyze Clean: Fixed all critical errors and warnings
- Memory Optimizations: Efficient animation controller management
- Gesture Detection: Enhanced touch responsiveness and interaction
- Code Quality: Improved error handling and state management
🗑️ Removed #
- Loading Indicators: Removed all loading widgets that caused UI blocks
- Deprecated Dependencies: Updated to use
withValues()instead of deprecatedwithOpacity() - Complex Progress Classes: Simplified to essential, optimized components
🐛 Bug Fixes #
- Fixed thumb not moving during progress bar interaction
- Resolved thumbnail preview not showing during seek
- Improved drag sensitivity and touch responsiveness
- Fixed video controller initialization timing issues
- Corrected progress calculation and positioning bugs
0.0.2 #
🚀 New Features #
- Long-press Controls: Added long-press to pause/play functionality with proper state tracking
- Intelligent Retry System: Enhanced video loading with exponential backoff and automatic cache clearing on failures
- Configuration Enhancements: Added new ReelConfig options:
bookmarkInMoreMenu- Move bookmark button to more menu (default: true)downloadInMoreMenu- Move download button to more menu (default: true)followButtonColor- Configurable follow button color (default: white)followingButtonColor- Color when user is following (default: white70)
- Improved UI Organization: Better button placement with configurable more menu options
- Enhanced Comment System: Redesigned comment bottom sheet with improved UI and keyboard handling
- Live Preview Playground: Added mini reels player in playground screen for real-time configuration testing
🔧 Improvements #
- Follow Button Styling: Updated to use configurable colors instead of fixed accent color
- Error Handling: Better retry logic with cache management for failed video loads
- Comment Interface: Removed external dialog dependency, improved native comment experience
- Code Organization: Cleaned up duplicate imports and optimized widget structure
🗑️ Removed #
- Premium Features: Removed premium-only features to maintain open-source nature
- External Dependencies: Reduced reliance on external dialog packages
🐛 Bug Fixes #
- Fixed loading overlay persistence issues
- Improved video state management during long-press interactions
- Better handling of video controller lifecycle
0.0.1 #
- Initial release: TikTok/Instagram-style vertical video reels widget with caching, analytics, and rich interactions.