147 Commits
Author SHA1 Message Date
kuekhaoyang f1a0086701 fix: harden sync and image fallback; release 4.9.19 2026-07-31 23:17:50 +08:00
can4hou6joeng4 b63f94fed4 fix(sync): 丢弃缺少 videoId 的同步记录,避免整页崩溃
服务端同步恢复回来的记录不保证结构完整(旧结构或半截写入)。缺少 videoId
的记录会让 HistoryItem.tsx:24 与 FavoritesItem.tsx:21 在渲染期拼播放地址
时对 undefined 调用 toString(),抛出未捕获异常。由于 getVideoUrl() 是在
渲染 href 时调用的,React 会直接卸载整棵树,首页白屏且刷新无效——该账号
只能靠直接改库才能恢复。

新增 lib/utils/sync-records.ts 做可渲染性判定(要求 videoId、source、
title 齐备),在云端拉取入口 useCloudSync 与 HistoryList / FavoritesList
各过滤一次:脏数据进不来,已经落库的也渲染不出来。
2026-07-31 18:28:35 +08:00
kuekhaoyang 0294f59602 fix: keep mobile fullscreen controls visible 2026-07-29 22:36:05 +08:00
kuekhaoyang f98de077f7 fix: player UX, ad fingerprinting, Android TV 9 white screen
Address issues #217 #218 and integrate the useful parts of PR #219 without
regressions: stop player rebuild on episode reverse, grid/paged episodes,
poster placeholders, chrome69 client transpile for Amlogic WebView, and
duration-signature ad block detection while keeping interstitial/proxy filters.

Bump to 4.9.15.
2026-07-25 14:43:30 +08:00
Codex 27d30139c1 fix: support Upstash Redis on Cloudflare Pages 2026-07-20 16:13:51 +08:00
kuekhaoyang 7ae08e2d7d fix issue 207 account actions visibility 2026-07-12 01:02:47 +08:00
kuekhaoyang d6f2a2e3c7 fix login gate session loop 2026-07-09 17:39:46 +08:00
kuekhaoyang db72a74817 Remove unused quick search component 2026-07-09 17:19:00 +08:00
kuekhaoyang 8c522119c0 Remove homepage quick search groups 2026-07-09 17:13:13 +08:00
kuekhaoyang 2bb70ca648 Fix tag management view entering search flow 2026-07-09 16:59:39 +08:00
kuekhaoyang 610f57c5b0 fix auth sync requests after login 2026-07-09 16:33:44 +08:00
kuekhaoyang bacd3f887e Fix mobile danmaku canvas scaling 2026-07-09 15:48:38 +08:00
kuekhaoyang 787680468b feat: clarify proxy and add LAN access toggle 2026-07-08 23:28:25 +08:00
kuekhaoyang 0f39d65b75 fix: default homepage to popular tab
Ensure the homepage always opens on the 热门 tag instead of automatically selecting 为你推荐, even when viewing history exists or cached tags omit the popular tag.

Fixes #182

Fixes #190
2026-07-08 23:00:09 +08:00
kuekhaoyang 62dafbfe59 feat: add homepage category shortcuts 2026-07-08 22:34:29 +08:00
kuekhaoyang dedf496761 fix: hide cursor during fullscreen playback 2026-07-08 22:12:34 +08:00
Wanfung Chu 5d17c72b3f style: set video card badge width 100% 2026-06-30 11:35:44 +08:00
Wanfung Chu db23dd732b style: video card 2026-06-30 11:17:18 +08:00
kuekhaoyang c1bcb5141a Fix Android APK PiP capture 2026-04-16 17:06:37 +08:00
kuekhaoyang 19e9707041 Fix managed auth and source list regressions 2026-04-15 23:04:41 +08:00
kuekhaoyang a205393da0 fix(settings): stabilize update check status 2026-04-12 12:34:09 +08:00
kuekhaoyang 833077a1f6 fix(cloudflare): remove node-only site icon route 2026-04-12 12:23:03 +08:00
kuekhaoyang 4fb718f8d8 feat(settings): add version and update status 2026-04-12 11:57:38 +08:00
kuekhaoyang 727fc2b0ed fix(docker): make the site icon configurable at runtime
Add SITE_ICON_FILE and SITE_ICON_URL support for the Docker image, route the app shell and manifest through a runtime icon endpoint, document the new Docker branding flow, and bump the app version to 4.8.3.
2026-04-12 11:26:57 +08:00
kuekhaoyang e2d7549a70 fix(player): expand the default player viewport
Remove the extra player shell, make the inline player full width on phones, align portrait web fullscreen to the top, and bump the app version to 4.8.2.

Closes #154
2026-04-12 10:51:48 +08:00
kuekhaoyang 15f6e434c8 fix(player): guard cast SDK in Android WebView
Fixes #147
2026-04-09 22:41:15 +08:00
kuekhaoyang fb4f50ee7f Hide fullscreen clock with player controls
Fixes #141
2026-04-08 14:05:53 +08:00
kuekhaoyang 372e60c4e5 fix: restore Android PiP/fullscreen and remove stale media caching
Fixes #142
2026-04-08 13:49:24 +08:00
kuekhaoyang 4db08dbf72 fix: sync runtime config into settings 2026-04-08 13:36:09 +08:00
kuekhaoyang f4f5597a80 fix: polish favorites page implementation 2026-04-07 22:05:39 +08:00
LamLarryyyyandClaude Sonnet 4.6 ddcce8341a feat: add dedicated My Favourites page with grid view
Add a full-page favourites view accessible via heart icon in the navbar.
Supports sorting by date/title, clear all, infinite scroll pagination,
and separate pages for normal (/favorites) and premium (/premium/favorites) modes.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-04-07 14:37:16 +08:00
kuekhaoyang e73416d76b gate VideoTogether behind settings 2026-04-02 22:29:27 +08:00
kuekhaoyang 37b6e160d7 fix remaining issue 72 ui and iptv regressions 2026-04-02 22:14:46 +08:00
kuekhaoyang 5829a79ee3 fix: enforce compliance mode for managed deployments 2026-04-02 21:42:00 +08:00
kuekhaoyang c8b7544f36 fix: stabilize iOS web fullscreen across auto-next 2026-04-02 20:35:27 +08:00
kuekhaoyang 9c3a984984 add VideoTogether website integration 2026-04-02 20:22:53 +08:00
kuekhaoyang 48ad9bc252 fix: restore HLS ad filtering
Closes #133

Closes #134
2026-04-02 20:12:59 +08:00
kuekhaoyang a6bfcf4b36 feat: add configurable seek step setting 2026-04-02 19:57:08 +08:00
kuekhaoyang 37d2c4abd9 Respect persisted danmaku API setting 2026-04-02 19:36:20 +08:00
mayziran 91bb481c4e docker弹幕环境变量修复 2026-03-26 15:23:43 +08:00
kuekhaoyang 91a89e8bf2 Fix issue #72 follow-ups and IPTV source handling 2026-03-26 14:16:58 +08:00
kuekhaoyang 35f7f4d83a feat: upgrade player fullscreen buffering and panel controls 2026-03-26 13:51:45 +08:00
kuekhaoyang 286d72341e fix: update video resolution badge visibility logic in DesktopVideoPlayer 2026-03-18 13:26:47 +08:00
kuekhaoyang 5d8c3daba0 feat: add full source resolution probing and display in player UI 2026-03-18 13:06:58 +08:00
kuekhaoyang 3564ce1ede chore: update package versions and add user config sync API
- Bump version to 4.8.0 and update dependencies in package.json
- Implement user config sync API for cross-device settings persistence
- Add resolution badge auto-hide hook for improved user experience
- Create useConfigSync hook to manage user settings synchronization with the server
2026-03-18 12:44:05 +08:00
kuekhaoyang 1439a15d22 feat: Enhance PlayerSettings with Danmaku options and improve UI components
- Added Danmaku settings including API URL, opacity, font size, and display area to PlayerSettings.
- Improved button styles and transitions across various UI components for better user experience.
- Updated BackToTop, Badge, Button, Card, ConfirmDialog, Input, ModalBackdrop, ModalHeader, SegmentedControl, and Switch components for consistency with Liquid Glass design.
- Adjusted package versions in package.json and package-lock.json to reflect version 4.5.0.
2026-03-15 17:01:51 +08:00
kuekhaoyangandClaude Opus 4.6 5782da19c6 feat: refine UI design system with polished colors, animations, and components (v4.7.0)
Comprehensive UI overhaul across the Liquid Glass design system:
- Refined color palette with deeper dark mode tones and better contrast
- Updated glass morphism effects with improved blur and saturation values
- Polished Button, Card, Badge, Input, Switch, SegmentedControl components
- Improved VideoCard with poster zoom effect, gradient overlay, and better badge layout
- Refined Navbar with tighter spacing and better icon button hover states
- Enhanced sidebar toggle buttons (rounded-full, better sizing)
- Split PlayerSettings into PlayerSettings + DanmakuSettings (150-line limit)
- Fixed broken rgba(var(--accent-color-rgb)) references with color-mix()
- Added new CSS variables: --radius-xs/sm/md/lg, --shadow-lg, --transition-spring/snappy
- Added staggered children animation and sidebar enter keyframes
- Better scrollbar styling and focus states

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-03-15 16:58:03 +08:00
kuekhaoyangandClaude Opus 4.6 df137c97f3 feat: upgrade Liquid Glass design system to full spec (v4.6.0)
- Upgrade CSS variables with proper glass transparency, fixed gradient
  backgrounds, cubic-bezier(0.2, 0.8, 0.2, 1) fluid transitions, and
  enhanced shadow/border values matching the Liquid Glass touchstone
- Add full backdrop-filter: blur(25px) saturate(180%) to glass-card,
  glass-input, glass-popover, and glass-backdrop CSS classes
- Add lensing inner-glow hover effects and toast-in animation
- Update all UI components (Button, Card, Input, Badge, Switch,
  SegmentedControl, ConfirmDialog, ModalBackdrop, ModalHeader,
  BackToTop, Navbar) for strict Liquid Glass compliance
- Enforce rounded-2xl / rounded-full consistency across all components
- Bump version to 4.6.0, update @vercel/analytics to ^2.0.1

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-03-15 15:47:16 +08:00
kuekhaoyang b424047c5b feat: add resolution probing support to VideoCard, VideoGrid, and VideoGroupCard components 2026-03-12 23:36:30 +08:00
kuekhaoyang b41ead2564 feat: import useResolutionProbe hook for video resolution probing in VideoGrid component 2026-03-12 23:36:23 +08:00