67 Commits

Author SHA1 Message Date
James Chen
e6194a50ab fix: ios-tv work ok 2025-09-22 15:16:13 +08:00
James Chen
37d8580b9c feat: implement back button logic — single tap to scroll to top, double tap to exit. 2025-09-05 12:26:44 +08:00
James Chen
79308607b8 style(CustomScrollView): adjust layout styles for better responsiveness and spacing, Fix ATV card overflowing the right edge 2025-09-04 16:44:58 +08:00
James Chen
7af9bf2b4c feat(ui): add text selection handling in APIConfigSection and LiveStreamSection components, settings remote input can save 2025-09-02 09:54:58 +08:00
James Chen
0d9f552ede feat(ui): enhance settings sections with responsive layout and keyboard handling 2025-09-01 14:12:26 +08:00
James Chen
62d8141178 feat(ui): replace TouchableOpacity with Pressable in VideoCard component for improved touch handling 2025-09-01 14:12:26 +08:00
James Chen
23647f7329 feat(ui): replace Pressable with TouchableOpacity for non-TV devices in VideoCard component 2025-08-28 17:38:02 +08:00
James Chen
67275988bd feat(ui): unify android ripple effect logic for Pressable across HomeScreen, StyledButton, and VideoCard components 2025-08-28 09:18:24 +08:00
James Chen
f7ae93bd3d feat(ui): update Pressable ripple effect for device type in HomeScreen, StyledButton, and VideoCard components 2025-08-27 22:46:20 +08:00
James Chen
9bcdeaa44d feat(platform): customize android ripple effect for Pressable based on platform type 2025-08-27 18:07:22 +08:00
James Chen
4c93736c5e feat(ui): replace TouchableOpacity with Pressable for improved ripple effect and add color customization, android focus effect 2025-08-27 17:22:11 +08:00
zimplexing
e57466c8c1 refactor(logging): implement unified Logger system to replace console calls
- Add Logger utility with tagged output and environment-based control
- Configure Babel to remove console calls in production builds
- Replace all console.* calls across stores, services, and components with Logger
- Enable development-only logging with formatted output and component tags
- Optimize production builds by eliminating all logging code
2025-08-15 22:57:38 +08:00
zimplexing
e4ecd1339e feat(login): implement credential management for login modal 2025-08-15 15:20:37 +08:00
zimplexing
1ef5a6b445 feat(player): implement playback speed control with persistent settings
- Add playback rate state and actions to player store
- Create SpeedSelectionModal with 7 speed options (0.5x - 2x)
- Add speed control button with Gauge icon to PlayerControls
- Integrate rate prop with Expo AV Video component
- Extend PlayerSettings storage to persist playback rate per video
- Support speed control across TV, mobile, and tablet platforms
2025-08-14 15:14:37 +08:00
zimplexing
10a806a657 feat(api): implement API configuration validation and error handling in home screen and update section 2025-08-14 14:08:11 +08:00
zimplexing
1cf3733ee2 refactor(config): clean up and standardize code formatting in configuration files 2025-08-14 11:08:54 +08:00
zimplexing
d1ed2dd8d6 fix(layout): improve video card grid alignment
- Implement intelligent row-based layout system
- Full rows (3 cards) use space-between for even distribution
- Partial rows (<3 cards) use flex-start for left alignment
- Replace flexWrap approach with row grouping for better control
- Add dynamic margin handling for different row types

This resolves both the uneven spacing in full rows and scattered alignment in partial rows.
2025-08-13 19:35:08 +08:00
zimplexing
6a31e8ac85 feat(mobile): optimize mobile experience by hiding non-essential features
- Hide live streaming tab in mobile navigation components
- Hide remote input and live stream configurations in settings
- Hide API configuration description text on mobile
- Disable HTTP server startup on mobile devices to save resources

This streamlines the mobile interface while preserving full functionality on tablet and TV platforms.
2025-08-13 19:30:29 +08:00
zimplexing
cdf0d72bdc fix(ui): resolve status bar overlay issue across all screens
Add SafeAreaProvider to root layout and implement proper safe area handling:
- Wrap app in SafeAreaProvider in _layout.tsx
- Update HomeScreen to use safe area insets for proper top padding
- Fix SettingsScreen safe area handling for all device types
- Update ResponsiveHeader to use SafeAreaContext instead of manual calculation

This ensures content is not covered by the status bar on mobile and tablet devices while maintaining TV compatibility.
2025-08-13 19:23:32 +08:00
zimplexing
fc81de1728 feat(update): add toast notifications for update failures
- Add toast error messages when version check fails
- Show user-friendly error notifications for download failures
- Display specific installation error messages with troubleshooting hints
- Improve logging from console.error to console.info for better categorization
2025-08-13 18:58:32 +08:00
zimplexing
df8fae96ac Merge branch 'v1.3.0' of github.com:zimplexing/OrionTV into v1.3.0 2025-08-13 18:47:48 +08:00
zimplexing
f0c797434d fix(update): resolve APK download path issue and enhance update components
- Fix UpdateService to use DocumentDir instead of DownloadDir for APK storage
- Add retry mechanism for network failures in version checking and downloading
- Implement automatic cleanup of old APK files to manage storage
- Replace TouchableOpacity with StyledButton in UpdateModal for consistency
- Add TV focus control to UpdateSection component
- Reduce category button spacing on TV for better navigation
- Update download URL template to match release naming convention
2025-08-13 17:19:48 +08:00
zimplexing
60c4e7420d feat: Implement mobile tab navigation and enhance responsive layout for better user experience 2025-08-06 22:00:29 +08:00
zimplexing
9e9e4597cc feat: Enhance mobile and tablet support with responsive layout adjustments and new navigation components 2025-08-01 16:36:28 +08:00
zimplexing
18aba87ddb feat: Implement automatic update checking and user notifications for new versions 2025-08-01 13:53:29 +08:00
zimplexing
187a753735 feat: Enhance UI with fade animations and implement data caching in home store 2025-07-28 10:28:02 +08:00
zimplexing
b2de622a40 feat: Update disclaimer 2025-07-26 15:05:17 +08:00
zimplexing
0f8cc49019 fix: add disclaimer alert after successful login and update error message 2025-07-26 14:57:51 +08:00
zimplexing
8ea588617d fix: update placeholder and error message 2025-07-26 14:50:53 +08:00
zimplexing
80cb5310c4 fix: UI issue 2025-07-25 18:24:42 +08:00
zimplexing
5992a89db4 feat: Update scroll experience 2025-07-25 15:39:23 +08:00
zimplexing
75d7f675f7 fix: reload video with new source while preserving playback position 2025-07-25 13:58:26 +08:00
zimplexing
9cbd23c36a refactor: improve focus management and input handling in LoginModal 2025-07-25 13:34:11 +08:00
zimplexing
3fa2eb3159 feat: add useKeepAwake to LivePlayer and update version to 1.2.7 2025-07-21 19:03:12 +08:00
zimplexing
e4e4417ef6 feat: enhance LivePlayer messages with localized text and improve M3U parsing logic 2025-07-21 14:06:44 +08:00
zimplexing
1be777825b fix: update VideoCard styles for improved visual consistency and accessibility 2025-07-18 22:57:56 +08:00
zimplexing
4c633febdc feat: update color scheme and styles across components for improved UI consistency 2025-07-18 22:21:33 +08:00
zimplexing
e8a1ea2717 feat: update PlayScreen and VideoLoadingAnimation styles, and log play record saving in playerStore 2025-07-18 19:08:49 +08:00
zimplexing
bd7087264d feat: add VideoLoadingAnimation component and integrate it into detail, play, and search screens for improved loading experience 2025-07-18 17:15:24 +08:00
zimplexing
990745eba9 feat: modify LoginModal to conditionally handle visibility based on pathname, preventing display on settings page 2025-07-18 12:19:29 +08:00
zimplexing
e0aa40eea0 feat: enhance PlayScreen and VideoCard with improved video loading and app state handling; update player store for better episode management 2025-07-16 21:26:37 +08:00
zimplexing
0b1fa9df6d feat: enhance LoginModal with TV event handling and input focus management 2025-07-15 22:33:11 +08:00
zimplexing
d44e9fe9ae feat: enhance login status management and improve error logging across services 2025-07-15 21:41:38 +08:00
zimplexing
8985781865 refactor: enhance LoginModal and StyledButton components for improved functionality 2025-07-15 15:49:46 +08:00
zimplexing
2bed3a4d00 feat: implement user authentication and logout functionality
- Added login/logout buttons to the HomeScreen and SettingsScreen.
- Integrated authentication state management using Zustand and cookies.
- Updated API to support username and password for login.
- Enhanced PlayScreen to handle video playback based on user authentication.
- Created a new detailStore to manage video details and sources.
- Refactored playerStore to utilize detailStore for episode management.
- Added sourceStore to manage video source toggling.
- Updated settingsStore to fetch server configuration.
- Improved error handling and user feedback with Toast notifications.
- Cleaned up unused code and optimized imports across components.
2025-07-14 22:55:55 +08:00
zimplexing
0452bfe21f feat: Implement user authentication and data management features
- Added LoginModal component for user login functionality.
- Introduced API routes for user login, favorites, play records, and search history management.
- Created JSON files for storing favorites, play records, and search history.
- Updated API service to handle new endpoints and refactored data management to use API calls instead of local storage.
- Adjusted data structures in types and services to align with new API responses.
2025-07-14 16:21:28 +08:00
zimplexing
fbe858715a fix: Update channel change logic to use useCallback for better performance; adjust resource check in VideoSourceSection 2025-07-11 21:44:15 +08:00
zimplexing
6df4f256e9 feat: Enhance settings screen with section tracking and success notifications; update remote control UI to support localization 2025-07-11 19:11:25 +08:00
zimplexing
5f92f76f4b feat: Enable remote input functionality and enhance settings management for remote control 2025-07-11 18:13:06 +08:00
zimplexing
03d80c42cd feat: Refactor settings management into a dedicated page with new configuration options, including live stream source and remote input settings 2025-07-11 17:23:36 +08:00