Commit Graph

222 Commits

Author SHA1 Message Date
dilgenfritz c361c308c1 Implement level display system replacing status panels
Features:
- Replace TOTAL XP and SESSION TIME panels with unified level display
- Show current level name and number (Virgin Level 1  Omnipotent Level 20)
- Display total XP with progress bar toward next level
- Real-time updates every 5 seconds and on PlayerStats changes

 UI Improvements:
- Cyberpunk-styled level display card matching billboard aesthetic
- Level name prominently displayed with level number
- XP progress bar showing advancement toward next level
- Responsive design maintaining home page layout

 Technical Implementation:
- Level calculation system using 100 XP per level progression
- Integration with existing PlayerStats XP tracking system
- Performance-optimized updates with event-driven refresh
- Fallback to localStorage if PlayerStats unavailable

 Level System:
- 20 adult-themed levels from Virgin to Omnipotent
- 100 XP required per level advancement
- Progress tracking shows current level XP and next level requirement
- Visual progress indicator for level advancement motivation
2025-11-05 22:18:50 -06:00
dilgenfritz 9a8d4b5432 Fix training academy task completion and prevent unwanted default task cycling
- Fixed completion behavior to return to mode selection instead of cycling through tasks
- Added explicit training-academy mode handling to load proper scenario data
- Prevented default focus-hold tasks (edge-focus-training, etc.) from being loaded
- Added task filtering to block unwanted default tasks
- Enhanced gameData protection with getter/setter to prevent task replacement
- Improved error handling to return to mode selection on invalid scenarios
- Training academy now properly loads scenario adventures with full interactive data
- Fixed scenario-training-regimen loading to include proper step data
2025-11-04 20:24:41 -06:00
dilgenfritz dbadd4a828 feat: Enhanced mirror task timer system and condescending game over dialog
- Fixed mirror task timer display to show actual duration (not hardcoded 60s)
- Added working progress bar with real-time countdown
- Disabled complete button until timer expires - prevents early completion
- Complete button shows countdown and enables only when timer finished
- Changed close mirror button to trigger immediate game over instead of confirmation
- Added condescending but professional game over dialog for training abandonment
- Fixed WebcamManager syntax errors that prevented proper initialization
- Enhanced training academy button styling for professional appearance
- Improved timer synchronization between training academy and webcam interfaces
2025-11-04 19:48:07 -06:00
dilgenfritz 2112142563 feat: Complete training academy integration with photo capture and endurance trials 2025-11-04 15:03:35 -06:00
dilgenfritz 1e55cb3f21 Complete Quick Play background video implementation
- Add independent background video system to Quick Play
- Implement VideoLibrary-style scanning for Quick Play
- Add compact floating video controls with opacity cycling
- Create video visibility toggle button (eye icon)
- Fix Quick Play game mode isolation (prevent main game interference)
- Add proper task loading with GameDataManager integration
- Implement Quick Play-specific task completion functions
- Add random image assignment for tasks from linked directories
- Fix syntax errors and improve error handling
- Complete video settings integration with Quick Play preferences

Features:
 Background videos play independently of Porn Cinema
 46 videos detected and playable
 Minimal UI controls that don't obstruct tasks
 Multiple opacity levels (hidden/dim/normal/bright)
 Quick toggle for video visibility
 Proper countdown timer (fixed from counting up)
 Real task loading (17 mainGameData tasks)
 Task images from 60 linked images
 Isolated game state management
2025-11-03 21:18:17 -06:00
dilgenfritz 58a2ec0ab2 Improve video detection and fix image loading errors
- Add comprehensive video extension list and debugging to scanVideoDirectory
- Add missing createPlaceholderImage method to prevent image loading errors
- Enhanced logging to show raw file counts and sample files during video scanning
- Fix infinite error spam when images fail to load
2025-11-03 19:49:04 -06:00
dilgenfritz 0f0147db2a Fix video library initialization for Quick Play
- Replace VideoLibrary dependency with direct directory scanning
- Add scanVideoDirectory method to DesktopFileManager
- Implement buildUnifiedVideoLibrary function
- Add fallback direct directory scanning using Electron API
- Improve error handling for video loading
- Fix VideoLibrary DOM dependency issues in Quick Play mode
2025-11-03 19:45:55 -06:00
dilgenfritz 8fb373afdb Add background video support to Quick Play
- Added video mode selection (none, background, popup, multi-screen)
- Implemented BaseVideoPlayer integration for background videos
- Added video opacity, sound, and control options
- Enhanced video library initialization for Quick Play mode
- Added user-friendly notifications when no videos are available
- Improved video container styling with proper layering
- Added automatic random video loading and rotation
- Enhanced task display readability over background video
2025-11-03 19:44:01 -06:00
dilgenfritz a10a6bafef Fix popup image manager async handling error
FIXED ERROR: 'files.filter is not a function' in popupImageManager.js

ISSUE:
- getLinkedImages() was calling electronAPI.readDirectory() without handling async/sync results
- readDirectory() can return Promise or Array depending on implementation
- Code assumed synchronous array result, causing TypeError when Promise returned

SOLUTION:
- Updated getLinkedImages() to handle both sync and async results from readDirectory()
- Made getLinkedImages(), getRandomPeriodicImage(), and showPeriodicPopup() async
- Added proper error handling for async directory reading
- Matches the pattern used successfully in game.js

RESULT: Popup images should now load properly from linked directories without errors
2025-11-03 19:24:59 -06:00
dilgenfritz 1e33a465a9 Fix image loading and consequence task issues
FIXED IMAGE ISSUES:
- Update getRandomImage() to include linked directory images in image pool
- Update popupImageManager to use linked images for punishment popups
- Store linked images globally as window.linkedImages for component access
- Both consequences and popup images now use all available image sources

FIXED CONSEQUENCE TASKS:
- Update loadConsequenceTask() to use GameDataManager instead of empty gameData.consequenceTasks
- Add fallback to legacy system if GameDataManager unavailable
- Add safety fallback task if no consequence tasks found
- Consequences should now show proper tasks from mainGameData.js instead of 'complete your task'

RESULT: Images and consequences now use linked directories + proper task content
2025-11-03 19:18:04 -06:00
dilgenfritz 8c355ed54e Clean up legacy code and unused files
REMOVED FILES:
- cyberpunk-hero-option1.html, option2.html, option3.html (unused alternative designs)
- scripts/scenario-extractor.js (one-time utility script)
- UNITY_MIGRATION_PLAN.md, UNITY_SETUP_GUIDE.md (obsolete documentation)

CLEANED UP CODE:
- Remove 'emergency fix' language from index.html, make fixes permanent
- Remove migration success logs from game.js (cleanup completed)
- Simplified library button handler setup
- Reduced console noise from temporary fixes

RESULT: Cleaner codebase with ~500 lines removed and better maintainability
2025-11-03 19:10:32 -06:00
dilgenfritz 52cd3329f1 Clean up debugging logs and fix Quick Play image sizing
- Remove excessive debugging logs from desktop-file-manager.js and porn-cinema.html
- Keep essential logging while reducing console noise
- Fix Quick Play task image sizing by removing manual dimension calculations
- Let CSS handle image scaling with object-fit: contain for proper aspect ratio
- Clear previous inline dimensions to prevent CSS conflicts
- Images should now properly fit within container boundaries
2025-11-03 19:04:09 -06:00
dilgenfritz b7cfc25f33 Fix directory persistence by preventing conflicts between file manager instances
- Porn Cinema now tries to reuse main window's file manager instance instead of creating new one
- Prevent saving directories when there are access errors to avoid clearing valid directories
- Skip unnecessary refresh calls when reusing existing file manager
- Add better error tracking without removing directories from storage
- Should maintain directory persistence between main library and porn cinema
2025-11-03 17:23:00 -06:00
dilgenfritz 04c5a496ae Add enhanced debugging for directory persistence investigation
- Added detailed error logging in refreshAllDirectories with full directory paths
- Keep inaccessible directories in list instead of removing them
- Enhanced porn-cinema.html to show actual directory data from storage
- Log directory refresh process step by step to identify where directories disappear
- Should reveal why linked directories become 0 after refresh
2025-11-03 17:18:17 -06:00
dilgenfritz a9a1c9e4a1 Fix missing file errors and clean up theme system
- Remove reference to non-existent image-discovery-fix.js file
- Add error handling for missing theme CSS files
- Update discoverImages method to work without external fix file
- Remove unsupported theme options from dropdown
- Prevents ERR_FILE_NOT_FOUND errors in console
2025-11-03 16:24:46 -06:00
dilgenfritz 8bf1f6fe4b Add debugging for video directory persistence issue
- Added logging to saveLinkedDirectories to show when data is saved
- Added detailed logging to loadLinkedDirectories showing raw data and directory details
- Added localStorage inspection in porn cinema initialization
- Added final state logging after directory refresh
- Should help identify why linked directories become unlinked between library and porn cinema
2025-11-03 16:17:47 -06:00
dilgenfritz 5931d643cb Add methods to clear stale unified video library data
- Modified updateUnifiedVideoStorage to detect mismatched video counts
- Added clearUnifiedVideoLibrary() to remove stale data
- Added forceRefreshVideoLibrary() to clear and refresh completely
- Fixed logic to force refresh when current directories don't match stored data
- Should resolve issue with 60 stale videos preventing proper scanning of 18 actual videos
2025-11-03 16:12:28 -06:00
dilgenfritz 285bce4dac Fix Porn Cinema to use unified video library
- Updated VideoLibrary.loadVideoLibrary() to read from unifiedVideoLibrary storage
- Added fallback to legacy system if unified library not available
- Convert unified library format to VideoLibrary format properly
- Map video.source to category (individual vs directory)
- Should now show all 60 videos from unified library instead of just 6 individual files
2025-11-03 16:06:27 -06:00
dilgenfritz 4b16ce8ff2 Fix Quick Play to load tasks from mainGameData.js
- Added mainGameData.js script to quick-play.html
- Initialize GameDataManager in Quick Play instance
- Modified loadMainTask to use GameDataManager.getTasksForMode()
- Added fallback to legacy gameData if GameDataManager unavailable
- Quick Play should now load the 17 explicit tasks from mainGameData.js
2025-11-03 16:00:13 -06:00
dilgenfritz 931e6aac97 Fix null reference errors in showFinalStats
- Added null checks for gameOverTitle and gameOverMessage elements
- Added null checks in displayRegularGameStats for all DOM elements
- Added null checks in displayScenarioStats for final stats elements
- Prevents 'Cannot set properties of null' errors in Quick Play mode
- Game ending now handles missing DOM elements gracefully
2025-11-03 15:56:06 -06:00
dilgenfritz 6701a8e7bf Fix infinite recursion bug and remove old Quick Play implementation
- Fixed infinite recursion in loadMainTask() using setTimeout to break call stack
- Removed old in-window Quick Play mode from gameModeManager
- Removed Quick Play UI configuration from index.html
- Cleaned up Quick Play specific code from game.js
- Quick Play now uses dedicated quick-play.html file only (newer version)
- Fixed syntax errors from code removal
2025-11-03 15:53:04 -06:00
dilgenfritz c33b0211d6 Final cleanup: Remove duplicate content from gameData.js, maintain config-only structure 2025-11-03 15:42:06 -06:00
dilgenfritz 5c20efcc1b Consolidate explicit content from gameData.js to mainGameData.js
- Replaced clean/generic tasks in mainGameData.js with explicit tasks from gameData.js
- mainGameData.js now contains 17 explicit main tasks + 12 explicit consequence tasks
- Verified no duplicates between mode files (each uses different ID schemes and task types)
- Mode files contain specialized interactive/scenario content vs simple explicit tasks
- Quick Play will now use consistent explicit content via GameDataManager->mainGameData
- No content duplication across the data files
2025-11-03 15:38:07 -06:00
dilgenfritz a84cf45b22 Fix syntax error in PopupImageManager
- Added missing closing brace for displayPeriodicPopup method
- Error was introduced during debug log cleanup
- All syntax errors resolved
2025-11-03 15:26:34 -06:00
dilgenfritz 6509ae5868 Deep codebase cleanup and optimization
- Removed obsolete emergency image-discovery-fix.js file
- Cleaned excessive debug console.log statements throughout codebase
- Removed Visual Studio .vs/ directory and added to .gitignore
- Removed duplicate programmatic mirror task addition from gameData.js
- Optimized debug logging in VideoLibrary and QuadVideoPlayer
- Removed redundant old image scanning methods (fallback, pattern-based discovery)
- Streamlined PopupImageManager getLinkedImages method
- Updated .gitignore to prevent future IDE file commits

Codebase is now cleaner with minimal debugging noise and no duplicate/obsolete code.
2025-11-03 15:17:55 -06:00
dilgenfritz 8a25b51168 Fix video loading and Quick Play image system migration
- Fixed porn cinema video loading to use correct linkedIndividualVideos storage
- Added CSS !important overrides to ensure video card visibility
- Migrated Quick Play from hardcoded image paths to linked storage system
- Added async getLinkedImages() methods to Game and PopupImageManager classes
- Fixed TypeError crashes from readDirectory async/sync issues
- Added comprehensive debug logging for media loading processes
2025-11-03 15:01:01 -06:00
dilgenfritz bdcb9bea18 EMERGENCY PERFORMANCE FIXES + Unity Migration Plan
IMMEDIATE PERFORMANCE FIXES:
- Disabled synthwaveMove animation on hero background (major GPU strain)
- Disabled scanning line animation (constant viewport repainting)
- Disabled gridFloat animation on 3D perspective grid
- Reduced grid opacity for lighter rendering
- Performance improvements should be immediately noticeable

UNITY MIGRATION PLANNING:
- Created comprehensive Unity migration plan (UNITY_MIGRATION_PLAN.md)
- Analyzed current 653k+ lines of JS code and complex media architecture
- Identified QuadVideoPlayer as primary performance bottleneck
- Designed modular Unity architecture for video system
- 8-week migration timeline with 3 phases
- Focus on native video processing to solve 4+ simultaneous stream issues

KEY INSIGHTS:
- Web stack hitting limits with complex multi-video management
- Unity VideoPlayer + RenderTextures can handle 4+ streams efficiently
- Current modular architecture translates well to Unity GameObjects
- Migration justified by performance needs + future platform goals

Next: Test performance fixes, then begin Unity prototype
2025-11-03 06:49:00 -06:00
dilgenfritz 34261fcfa9 PERFORMANCE FIX: Optimize synthwave effects for smoother performance
MAJOR OPTIMIZATIONS:
- Removed expensive filter: hue-rotate() from VHS glitch (was causing GPU strain)
- Reduced text-shadow blur radius from 80px to 20px max
- Slowed animation cycles: VHS glitch 12s20s, neon flicker 4s6s, scanline 8s12s
- Removed backdrop-filter: blur() from hero features (very expensive)
- Reduced 3D grid translateZ from 20px to 10px
- Added will-change: transform to grid for GPU optimization
- Limited scanning line to small area instead of full viewport
- Reduced grid opacity for lighter rendering

PERFORMANCE IMPROVEMENTS:
 Eliminated heavy GPU filter operations
 Reduced repainting frequency
 Optimized animation timing
 Lighter visual effects while maintaining aesthetic
 Should resolve latency/lag issues

Visual quality maintained while significantly improving performance
2025-11-03 06:31:51 -06:00
dilgenfritz 2f0f78cc08 Step 6: Complete synthwave cyberpunk hero transformation
FINAL POLISH & EFFECTS:
- Hero features now have cyberpunk neon border styling
- Angled clip-path corners for futuristic tech aesthetic
- Enhanced hover effects with scale transform and magenta glow
- Added VHS glitch animation to title text (12s cycle)
- Added scanning line effect across hero header (8s cycle)
- Backdrop blur effects for depth
- Complete synthwave visual system now active

VISUAL FEATURES:
 Synthwave typography (Michroma/Electrolize fonts)
 Magenta/cyan neon color scheme
 3D perspective grid floor effect
 Animated scanning lines
 VHS glitch effects
 Neon glow and flicker animations
 Cyberpunk UI elements

Sprint 1 Day 1 COMPLETE: Multi-screen controls + cyberpunk hero redesign
2025-11-03 06:27:21 -06:00
dilgenfritz a960addaad Step 5: Add iconic synthwave 3D perspective grid
- Added .neon-grid element with 3D CSS transform
- Grid uses perspective(1000px) and rotateX(60deg) for floor effect
- Magenta grid lines (#ff00ff) at 50px spacing
- Added gridFloat animation for subtle floating motion
- Grid positioned behind content with proper z-index
- Creates authentic 80s synthwave/outrun grid floor
- Added neon-grid div to HTML structure

TEST: Refresh to see the classic synthwave perspective grid floor effect
2025-11-03 06:24:36 -06:00
dilgenfritz 75150b7a9d Step 4: Add synthwave background gradients
- Updated hero background to deep purple/dark blue gradient
- Colors: #0a0015  #1a0030  #2d0060 (authentic synthwave palette)
- Added horizontal scan lines with magenta tint
- Updated background animation to synthwaveMove (vertical scroll effect)
- Removed old radial gradients for cleaner synthwave look
- Background now has authentic 80s retrowave atmosphere

TEST: Refresh to see dark purple background with subtle scan lines
2025-11-03 06:18:36 -06:00
dilgenfritz d9c65182c7 Step 3: Update tagline to synthwave typography
- Updated 'Master Your Dedication' with Audiowide font
- Changed to white text with magenta glow effect
- Added textGlow animation for pulsing effect
- Increased letter-spacing for cyberpunk aesthetic
- Updated subtitle to Electrolize font with cyan color
- Added cyan text-shadow glow
- Subtitle now uppercase with tech styling

TEST: Refresh to see tagline with white text + magenta glow, cyan subtitle
2025-11-03 06:17:07 -06:00
dilgenfritz 303b357f3e Step 2: Update main title to synthwave typography
- Changed font to Michroma (futuristic monospace)
- Updated color to magenta (#ff00ff)
- Added intense magenta text-shadow with glow effect
- Added neonFlicker animation with realistic flicker effect
- Increased letter-spacing for cyberpunk aesthetic
- Title now has authentic synthwave appearance

TEST: Refresh homepage to see magenta flickering title
2025-11-03 06:15:10 -06:00
dilgenfritz e51fed8f28 Step 1: Add Michroma and Electrolize fonts for synthwave design
- Added Michroma font for futuristic titles
- Added Electrolize font for clean tech text
- Fonts loaded from Google Fonts
- No visual changes yet, just preparing fonts for next steps
2025-11-03 06:14:01 -06:00
dilgenfritz 253b81277e Add cyberpunk hero section mockups
Three different cyberpunk design options:
- Option 1: Neon Matrix (green terminal aesthetic)
- Option 2: Purple Synthwave (80s retro-futuristic)  CHOSEN
- Option 3: Terminal Hacker (command line interface)

Each mockup includes:
- Complete responsive design
- Cyberpunk typography and effects
- Animated backgrounds and neon glows
- Status panels with futuristic styling
- Feature highlights with hover effects

Ready for Option 2 implementation in separate branch
2025-11-03 06:13:33 -06:00
dilgenfritz e66d89e1a1 Fix: Remove duplicate controls in QuadVideoPlayer
- Hide default OverlayVideoPlayer controls (.video-controls)
- Hide large play button overlay (.play-overlay)
- Keep only the new custom individual controls per quadrant
- Clean interface with single set of controls that appear on hover
2025-11-03 06:07:11 -06:00
dilgenfritz fdc8de2c99 Sprint 1 Day 1: Individual Quad Controls + Hero Section Redesign
Multi-Screen Individual Controls:
- Individual volume sliders with percentage display
- Independent play/pause buttons for each quadrant
- Progress bars with click-to-seek functionality
- Mute toggle buttons with visual feedback
- Individual shuffle/change video buttons
- Hover-to-show controls with smooth animations
- Mobile-responsive design

 Hero Section Overhaul:
- Professional typography with enhanced title/tagline
- Feature highlights showcasing key capabilities
- Modern status panel with XP, timer, and quick stats
- Gradient backgrounds with subtle animations
- Glassmorphism effects with backdrop blur
- Responsive grid layout for all screen sizes
- Visual hierarchy improvements

 Responsive Design:
- Mobile-optimized layouts for both features
- Proper scaling and touch-friendly controls
- Adaptive grid systems for different screen sizes
2025-11-03 06:06:13 -06:00
dilgenfritz 689574953a Multi-Screen Quad Player Implementation
Complete 4-Video Grid System:
- Created QuadVideoPlayer extending OverlayVideoPlayer architecture
- 2x2 responsive grid layout with professional styling
- Auto-hide individual headers, backdrop, and controls for clean quad view

 Training Mode Integration:
- Added Multi-Screen Mode button to interactive task controls
- Smart video library access using unified storage fallbacks
- Object-fit contain for proper video scaling (portrait/landscape)

 Advanced Controls:
- Shuffle All: Load 4 new random videos instantly
- Minimize: Hide overlay but continue videos in background
- Close: Stop all videos and reset state
- ESC key and backdrop click support

 State Management:
- Minimize/restore functionality for seamless training progression
- Proper cleanup on game end with video stopping
- DOM corruption prevention via force recreation strategy
- Complete player destruction and fresh initialization

 User Experience:
- Notification system integration with helpful status messages
- Responsive design with mobile considerations
- Pink/purple gradient theming matching game aesthetic
- Hover effects and smooth transitions

 Future: Individual controls, sync options, focus mode, custom layouts

Files: quadVideoPlayer.js, interactiveTaskManager.js, index.html, ROADMAP.md
2025-10-31 21:36:30 -05:00
dilgenfritz f06ec70751 Quick Fix: Restore Progress Bar with !important - Added !important back to critical properties - Something was overriding our styles without it 2025-10-31 20:52:55 -05:00
dilgenfritz 245c9fc5d9 Final Clean Progress Bar - Beautiful pink/purple gradient - Subtle white background track - 12px height with 16px hover - Full width with proper minimum dimensions - Clean code with no debug logging 2025-10-31 20:50:20 -05:00
dilgenfritz 22fc67f693 Fix Progress Bar Width Issue - Added width: 100% and min-width to container and bar - Issue was 2px computed width on working percentage - Should now show full-width progress bar 2025-10-31 20:48:37 -05:00
dilgenfritz 92adb37725 Progress bar found but too small - User identified thin line at bottom of green container - Should be 80% filled at 12s/15s but barely visible - Need to investigate element height/sizing 2025-10-31 20:47:29 -05:00
dilgenfritz 78182559ce VICTORY! Progress Bar Fully Working & Beautiful Debugging revealed progress bar was working perfectly Issue was 6px height too small to see clearly Restored elegant pink/purple gradient styling 12px height with 16px hover - perfect visibility Smooth animations and professional appearance PORN CINEMA PLAYER IS NOW COMPLETE! 2025-10-31 20:42:41 -05:00
dilgenfritz a21123757c TEMP: Force Progress Bar Visibility for Debugging - Added bright yellow container background - Added bright red progress bar background - Added bright green-blue filled progress - Force display/visibility/opacity to 1 - Should be IMPOSSIBLE to miss now! 2025-10-31 20:40:45 -05:00
dilgenfritz b7442d9d05 Make Progress Bar More Visible - Doubled height from 6px to 12px - Increased background opacity from 0.3 to 0.5 - Updated border radius to match - Hover height increased to 16px - Should now be clearly visible! 2025-10-31 20:37:55 -05:00
dilgenfritz ee3a7e701e Add Enhanced Progress Bar Debugging - Added DOM element detection logging - Enhanced progress update logging with style info - Check if elements exist in DOM vs found by selector - Will help identify if issue is element detection or CSS visibility 2025-10-31 20:35:37 -05:00
dilgenfritz 3649dd1eda Fix Progress Bar Performance & Infinite Loop
- Added debouncing to showControls() to prevent infinite loop
- Reduced console logging spam for progress updates
- Fixed thousands of rapid 'Showing controls...' messages
- Progress bar calculation working correctly (2.1% at 17s)
- Performance should be much better now
2025-10-31 20:31:18 -05:00
dilgenfritz 7bf1cd2007 Debug Progress Bar Visibility Issues
PROGRESS BAR DEBUGGING:
- Added comprehensive logging for progress bar element detection
- Enhanced updateProgress() with detailed progress percentage logging
- Added debugging to showControls() method to track visibility state
- Automatically show controls when video loads to ensure visibility

ELEMENT DETECTION LOGGING:
- Console output shows if progressBar, progressFilled, progressThumb elements found
- Logs progress updates with percentage and time values
- Tracks control container visibility and class changes

CONTROL VISIBILITY FIXES:
- Explicitly call showControls() when loading videos
- Added logging to identify if controls container exists
- Enhanced auto-hide behavior debugging

This will help identify if progress bar elements are found correctly
and if the progress updates are being calculated and applied properly.
2025-10-31 20:25:24 -05:00
dilgenfritz d7c105018f Set Default Playlist Loop Behavior
PLAYLIST LOOPING:
- Changed default repeat mode from 'off' to 'all'
- Playlists now automatically loop back to the beginning when reaching the end
- Users can still change repeat mode using the repeat button if desired
- Repeat button will show active state (full opacity) on initialization
- Provides seamless continuous playback experience by default

This ensures that when users create playlists, they get uninterrupted
viewing with automatic loop-back to the first video when the playlist
completes, creating a better user experience for extended viewing sessions.
2025-10-31 20:23:08 -05:00
dilgenfritz 33b6647a76 Debug Cinema Player Issues - Fix Pause Button & Add Autoplay Debugging 2025-10-31 20:19:53 -05:00