From bb85311686ed7a82cfbc2e0dd1ffff0eb835b274 Mon Sep 17 00:00:00 2001 From: Atemndobs Date: Sun, 1 Dec 2024 10:47:09 +0100 Subject: [PATCH 1/5] fix: update MobileNav to properly check audio content status - Replace isPlaying with queue-based hasAudioContent check - Remove conditional rendering of VoiceSelector - Update debug logging --- src/components/mobile-nav.tsx | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/components/mobile-nav.tsx b/src/components/mobile-nav.tsx index c787427..9988957 100644 --- a/src/components/mobile-nav.tsx +++ b/src/components/mobile-nav.tsx @@ -22,11 +22,17 @@ import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs' import { getStorageStats } from '@/lib/utils/storage' export function MobileNav() { - const { isPlaying } = useAudioQueue() + const { queue } = useAudioQueue() + + const hasAudioContent = queue.some(item => + item.status === 'ready' || + item.status === 'playing' || + item.status === 'paused' + ) console.debug('MobileNav render:', { - isPlaying, - shouldHideVoiceInfo: isPlaying + hasAudioContent, + shouldHideVoiceInfo: hasAudioContent }) return ( @@ -77,7 +83,7 @@ export function MobileNav() { - {!isPlaying && ( + {!hasAudioContent && (
From 43a9a9da9f19519b2b2407ad6ef06fd2247bf85f Mon Sep 17 00:00:00 2001 From: Atemndobs Date: Sun, 1 Dec 2024 10:48:18 +0100 Subject: [PATCH 2/5] fix: update components and remove unused files - Update MobileNav to properly check audio content status - Modify page.tsx - Update voice-selector.tsx - Remove unused text-input.tsx component --- src/app/page.tsx | 7 +- src/components/text-to-speech/text-input.tsx | 130 ------------------- src/components/voice-selector.tsx | 53 -------- 3 files changed, 3 insertions(+), 187 deletions(-) delete mode 100644 src/components/text-to-speech/text-input.tsx diff --git a/src/app/page.tsx b/src/app/page.tsx index e474e33..0596531 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -3,7 +3,6 @@ import { useState, useRef, useEffect } from 'react' import { Button } from '@/components/ui/button' import { Input } from '@/components/ui/input' -import { Label } from '@/components/ui/label' import { useAudioQueue } from '@/lib/store/audio-queue' import { useSettings } from '@/lib/store/settings' import { MiniPlayer } from '@/components/audio-player/mini-player' @@ -139,7 +138,7 @@ export default function Home() { onValueChange={(value) => setActiveTab(value as "url" | "text")} className="w-full" > - {!isPlaying && ( + {!hasAudioContent && ( URL Text @@ -184,7 +183,7 @@ export default function Home() { - {textInput.trim() && !isPlaying && ( + {textInput.trim() && !hasAudioContent && (