diff --git a/frontend/src/components/Feed.tsx b/frontend/src/components/Feed.tsx index 8a1062b..4d097ee 100644 --- a/frontend/src/components/Feed.tsx +++ b/frontend/src/components/Feed.tsx @@ -382,6 +382,7 @@ export default function Feed({ startAt={activeVideo.startAt} onClose={() => setActiveVideo(null)} onState={onState} + onOpenChannel={onOpenChannel} /> )} diff --git a/frontend/src/components/PlayerModal.tsx b/frontend/src/components/PlayerModal.tsx index fc324db..056dd42 100644 --- a/frontend/src/components/PlayerModal.tsx +++ b/frontend/src/components/PlayerModal.tsx @@ -45,6 +45,7 @@ export default function PlayerModal({ startIndex, onClose, onState, + onOpenChannel, }: { video: Video; // Where to start the opened video: a number of seconds (0 = Restart), or null/undefined @@ -57,6 +58,9 @@ export default function PlayerModal({ startIndex?: number; onClose: () => void; onState: (id: string, status: string) => void; + // Open the active video's channel page in-app (closes the player first). The small external + // icon next to the name keeps the open-on-YouTube behaviour. + onOpenChannel?: (channelId: string, channelName?: string) => void; }) { const { t, i18n } = useTranslation(); const qc = useQueryClient(); @@ -552,14 +556,27 @@ export default function PlayerModal({ {liveData?.author ?? ""} ) ) : ( - - {active.channel_title} - +