diff --git a/attached_assets/image_1756477766206.png b/attached_assets/image_1756477766206.png new file mode 100644 index 0000000..b42af93 Binary files /dev/null and b/attached_assets/image_1756477766206.png differ diff --git a/client/src/components/ad-settings.tsx b/client/src/components/ad-settings.tsx index 3ad2892..4c9d8d8 100644 --- a/client/src/components/ad-settings.tsx +++ b/client/src/components/ad-settings.tsx @@ -116,7 +116,7 @@ export default function AdSettings({ isOpen, onClose }: AdSettingsProps) { if (!isOpen) return null; return ( -
+
diff --git a/client/src/components/bunny-video-modal.tsx b/client/src/components/bunny-video-modal.tsx index f4983a0..68f0187 100644 --- a/client/src/components/bunny-video-modal.tsx +++ b/client/src/components/bunny-video-modal.tsx @@ -169,7 +169,7 @@ export default function BunnyVideoModal({ video, isOpen, onClose, onEdit, videos return (
diff --git a/client/src/components/netflix-grid.tsx b/client/src/components/netflix-grid.tsx index 1ccd7c5..74e5a60 100644 --- a/client/src/components/netflix-grid.tsx +++ b/client/src/components/netflix-grid.tsx @@ -134,6 +134,8 @@ interface CategoryRowProps { function CategoryRow({ category, onVideoClick }: CategoryRowProps) { const scrollRef = useRef(null); const scrollIntervalRef = useRef(null); + const [isLeftButtonHovered, setIsLeftButtonHovered] = useState(false); + const [isRightButtonHovered, setIsRightButtonHovered] = useState(false); const scroll = (direction: 'left' | 'right') => { if (scrollRef.current) { @@ -195,7 +197,7 @@ function CategoryRow({ category, onVideoClick }: CategoryRowProps) { }; return ( -
+

{category.title}

@@ -210,13 +212,15 @@ function CategoryRow({ category, onVideoClick }: CategoryRowProps) { }} onMouseEnter={(e) => { e.stopPropagation(); + setIsLeftButtonHovered(true); startAutoScroll('left'); }} onMouseLeave={(e) => { e.stopPropagation(); + setIsLeftButtonHovered(false); stopAutoScroll(); }} - className="hidden md:flex absolute left-2 top-[45%] -translate-y-1/2 w-12 h-12 z-30 bg-black/80 hover:bg-black/95 rounded-full items-center justify-center transition-all duration-300 cursor-pointer border border-white/30 shadow-lg" + className={`${isLeftButtonHovered ? 'flex' : 'hidden md:group-hover:flex'} absolute left-2 top-[45%] -translate-y-1/2 w-12 h-12 z-30 bg-black/80 hover:bg-black/95 rounded-full items-center justify-center transition-all duration-300 cursor-pointer border border-white/30 shadow-lg`} data-testid="button-scroll-left" > @@ -231,13 +235,15 @@ function CategoryRow({ category, onVideoClick }: CategoryRowProps) { }} onMouseEnter={(e) => { e.stopPropagation(); + setIsRightButtonHovered(true); startAutoScroll('right'); }} onMouseLeave={(e) => { e.stopPropagation(); + setIsRightButtonHovered(false); stopAutoScroll(); }} - className="hidden md:flex absolute right-2 top-[45%] -translate-y-1/2 w-12 h-12 z-30 bg-black/80 hover:bg-black/95 rounded-full items-center justify-center transition-all duration-300 cursor-pointer border border-white/30 shadow-lg" + className={`${isRightButtonHovered ? 'flex' : 'hidden md:group-hover:flex'} absolute right-2 top-[45%] -translate-y-1/2 w-12 h-12 z-30 bg-black/80 hover:bg-black/95 rounded-full items-center justify-center transition-all duration-300 cursor-pointer border border-white/30 shadow-lg`} data-testid="button-scroll-right" > diff --git a/client/src/components/vast-player.tsx b/client/src/components/vast-player.tsx index 3422d4b..7c37307 100644 --- a/client/src/components/vast-player.tsx +++ b/client/src/components/vast-player.tsx @@ -270,7 +270,7 @@ export default function VASTPlayer({ video, onClose, vastTagUrl, enableAds = tru }; return ( -
+
{/* Close button */}