Commit Graph
79 Commits
Author SHA1 Message Date
kuekhaoyang 5c4023b05c perf: Add priority image loading for the first 10 visible cards in movie and video grids. 2025-11-24 17:06:33 +08:00
kuekhaoyang 1384de946c feat: implement image optimization and extract mobile play/pause logic into a new hook. 2025-11-24 16:59:13 +08:00
kuekhaoyang 66be634b53 feat: Improve video playback state syncing for AirPlay and add unoptimized and referrerPolicy to image components. 2025-11-24 16:54:20 +08:00
kuekhaoyang 38bad7546f fix: Refine video seeking logic in playback controls to prevent overwrites and offset HLS preloader start index to avoid browser competition. 2025-11-23 23:18:22 +08:00
kuekhaoyang f0b19c1144 feat: Add usePlaybackPolling hook for robust playback progress updates and refine history item matching logic. 2025-11-23 23:11:59 +08:00
kuekhaoyang 95e4a733ee fix: Prevent video from getting stuck at 00:00:00 by seeking to 0.1s on start and enable autoplay by default. 2025-11-23 21:59:00 +08:00
kuekhaoyang 7ec01a73d6 feat: remove CacheSettings component 2025-11-23 17:52:38 +08:00
kuekhaoyang 045247041d fix: prevent unnecessary video seeking if current time is close to initial playback time. 2025-11-23 17:21:12 +08:00
kuekhaoyang 6dc6757ad1 perf: Reduce segment download concurrency, replace Next.js Image with native img for poster images, and clean episode URLs by removing redundant slashes. 2025-11-23 17:13:23 +08:00
kuekhaoyang f3b3da3285 refactor: update UI component imports and replace Card subcomponents with native HTML elements. 2025-11-23 14:34:54 +08:00
kuekhaoyang 09d8a124a5 feat: Implement HLS cache management with service worker updates, metadata tracking, and a settings UI. 2025-11-23 14:22:51 +08:00
kuekhaoyang 9ee468b246 feat: Implement debounced HLS segment preloading, preserve cache across manifest fetches, and add initialization tracking. 2025-11-23 13:58:23 +08:00
kuekhaoyang 1e31a842e9 feat: Implement HLS video segment preloading and caching using a service worker. 2025-11-23 13:01:08 +08:00
kuekhaoyang 5e9af1b89e feat: centralize homepage logic into a new hook and refactor settings management with subscription and helper functions. 2025-11-23 11:41:48 +08:00
kuekhaoyang 5655d1032b style: Increase search input border radius for consistency. 2025-11-22 20:59:50 +08:00
kuekhaoyang 64636a3da9 feat: Implement custom source editing and refactor source management to use full 2025-11-22 20:57:38 +08:00
kuekhaoyang 907e093fef update proxy url 2025-11-22 17:27:27 +08:00
kuekhaoyang 4489165a08 feat: Introduce shouldAutoPlay prop for video players and add a video content proxy API. 2025-11-22 16:41:11 +08:00
kuekhaoyang 1b5f591a7a feat: Integrate video playback progress with history store and ensure seeking on late initialization. 2025-11-22 15:53:05 +08:00
kuekhaoyang fd7d4c8083 feat: integrate MobileMoreMenu into RightControls and remove standalone volume and speed menus from MobileControls. 2025-11-22 11:45:45 +08:00
kuekhaoyang 5c67f69b5e refactor: Remove player-specific dependencies, setup script, keyboard shortcuts, and project documentation. 2025-11-22 10:56:11 +08:00
kuekhaoyang 5f5d01047f feat: Dynamically show/hide expand button for badge lists based on content overflow 2025-11-21 23:28:16 +08:00
kuekhaoyang 58a8d4910e feat: Implement comprehensive search functionality, enhance video player controls for desktop and mobile, and refactor settings and history UI. 2025-11-21 19:00:23 +08:00
kuekhaoyang a408f2270f feat: Add video card component, desktop player controls, and introduce API utilities for search and data parsing. 2025-11-21 12:58:19 +08:00
kuekhaoyang 6e81559d90 refactor: extract player control logic into dedicated desktop and mobile hooks and introduce new mobile player control components. 2025-11-21 12:47:40 +08:00
kuekhaoyang 36488e545c feat: Introduce distinct mobile and desktop video player UI, controls, and state management, along with new styling and icon components. 2025-11-21 12:34:45 +08:00
kuekhaoyang d199c7aa6f feat: Add iOS detection and specific fullscreen handling, and remove redundant touch event handlers from player controls. 2025-11-20 09:30:48 +08:00
kuekhaoyang 33b5cc36e9 feat: Add viewport width tracking and refactor fullscreen implementation to use the container element for broader compatibility. 2025-11-19 16:57:06 +08:00
kuekhaoyang 0f677ddee3 perf: Optimize UI performance by simplifying glass effects, removing complex gradients and backdrop-filter, and adding hardware acceleration. 2025-11-19 16:36:11 +08:00
kuekhaoyang b6cebc35bf feat: Add new animations and optimize global CSS for improved performance and readability. 2025-11-19 16:24:11 +08:00
kuekhaoyang 7eee36fc50 feat: Refactor Badge and VideoCard components for improved styling and layout consistency 2025-11-19 12:25:17 +08:00
kuekhaoyang 3a756dd06f feat: Enhance search history dropdown with absolute positioning and empty state styling; improve video player autoplay functionality 2025-11-19 12:22:20 +08:00
kuekhaoyang fad6041df0 feat: Implement source management modals and settings store
- Added AddSourceModal for adding new video sources with validation.
- Introduced ExportModal for exporting settings and history options.
- Created ImportModal for importing settings from JSON files.
- Developed SourceManager for managing video sources, including enabling/disabling, deleting, and reordering.
- Established settings store to manage application settings, including default sources and sorting options.
- Implemented sorting utility functions for video search results based on various criteria.
2025-11-19 11:53:37 +08:00
kuekhaoyang f7c32485b9 feat: implement SourceBadgeList and SourceBadgeItem components for improved video source filtering 2025-11-19 11:17:54 +08:00
kuekhaoyang fd1aa37767 feat: add latency tracking and display in video search results; optimize scrolling performance 2025-11-19 10:55:39 +08:00
kuekhaoyang cd8cccc4f5 feat: enhance MobileVideoPlayer with iOS fullscreen support and touch manipulation for buttons 2025-11-18 19:40:28 +08:00
kuekhaoyang f03ecb3294 feat: implement search history dropdown with liquid glass effect; add hooks for managing search history 2025-11-18 18:21:12 +08:00
kuekhaoyang 694a015a1e refactor: implement source badge filtering; add useSourceBadges hook and integrate with HomePage and VideoGrid components 2025-11-18 18:01:33 +08:00
kuekhaoyang 973bc9048d refactor: enhance UI responsiveness and animations; add smooth transitions for video grid and improve TypeBadgeItem interaction 2025-11-18 17:47:15 +08:00
kuekhaoyang 0c9844d9ce refactor: optimize performance in various components; adjust animation intervals, memoize components, and improve sorting logic 2025-11-18 17:43:09 +08:00
kuekhaoyang 79515e2702 refactor: optimize performance across components; adjust backdrop filters, transitions, and scrolling behavior 2025-11-18 17:25:50 +08:00
kuekhaoyang 88f14290b5 refactor: remove unused accessibility utilities and hooks
- Deleted accessibility index file and related exports.
- Removed `useClickOutside` and `useClickOutsideMultiple` hooks for handling outside clicks.
- Eliminated `useSearchStream` hook and its associated logic for managing search state.
- Cleaned up `useMediaQuery` by removing predefined breakpoints and related utility hooks.
- Removed `source-checker` utility for checking video source availability.
- Refactored `client.ts` to simplify error handling and remove unused functions.
- Streamlined `video-sources.ts` by removing custom source management functions.
- Deleted `search-history-store.ts` and related search history management logic.
- Removed unused types and interfaces from `types/index.ts`.
- Cleaned up search utilities, focusing on relevance scoring and optimization.
2025-11-18 16:52:41 +08:00
kuekhaoyang 73eeea7161 feat: Enhance SearchLoadingAnimation with pause functionality and progress indicators; update Badge component to support icons with customizable positions 2025-11-18 16:02:50 +08:00
kuekhaoyang e007899f9e feat: Standardize border radius usage across components and implement View Transition API for theme changes 2025-11-18 15:43:58 +08:00
kuekhaoyang db40601649 feat: Add ConfirmDialog component and accessibility utilities for enhanced user interaction 2025-11-18 15:31:22 +08:00
kuekhaoyang 2bc0be5d95 feat: Implement responsive design improvements and add custom hooks for keyboard navigation and click outside detection 2025-11-18 15:23:42 +08:00
kuekhaoyang 79ac2c349e feat: Optimize component performance with GPU acceleration and add placeholder image for missing content 2025-11-18 15:15:45 +08:00
kuekhaoyang 44cae03731 feat: Implement comprehensive keyboard navigation for KVideo components
- Added `useKeyboardNavigation` hook for managing keyboard interactions across lists and grids.
- Integrated keyboard navigation into VideoGrid, TypeBadges, SearchHistoryDropdown, and EpisodeList components.
- Enhanced accessibility by implementing ARIA roles and properties.
- Established visual focus indicators following Liquid Glass design principles.
- Created detailed documentation for keyboard shortcuts and component usage.
- Conducted performance optimizations and ensured compliance with WCAG 2.2 standards.
2025-11-18 15:07:39 +08:00
kuekhaoyang 251e15a37d feat: Enhance accessibility with ARIA attributes and focus trap implementation 2025-11-18 14:58:03 +08:00
kuekhaoyang 3dfcc6565d feat: Add history management components and movie grid with infinite scroll
- Implemented HistoryEmptyState component for displaying when no viewing history exists.
- Created HistoryItem component to represent individual watch history items with video details and delete functionality.
- Developed MovieCard component to display individual movie details including poster, title, and rating.
- Added MovieGrid component for displaying a grid of movie cards with infinite scroll capabilities.
- Introduced TagManager component for managing custom tags with creation, deletion, and filtering functionalities.
- Created TypeBadgeItem and TypeBadgeList components for displaying selectable badges with counts.
- Added custom hook useInfiniteScroll for managing infinite scroll behavior.
- Implemented contrast testing script to ensure WCAG compliance for UI components.
2025-11-18 14:50:14 +08:00