diff --git a/src/components/MainNavBars/MainNavBars.tsx b/src/components/MainNavBars/MainNavBars.tsx index 43d08f5c8..fed1668a2 100644 --- a/src/components/MainNavBars/MainNavBars.tsx +++ b/src/components/MainNavBars/MainNavBars.tsx @@ -1,9 +1,10 @@ // Copyright (C) 2017-2023 Smart code 203358507 -import React, { memo } from 'react'; +import React, { memo, useEffect } from 'react'; import classnames from 'classnames'; import { VerticalNavBar, HorizontalNavBar } from 'stremio/components/NavBar'; import styles from './MainNavBars.less'; +import { useGamepad, useVerticalSpatialNavigation } from 'stremio/services'; const TABS = [ { id: 'board', label: 'Board', icon: 'home', href: '#/' }, @@ -21,7 +22,13 @@ type Props = { children?: React.ReactNode, }; +const GAMEPAD_HANDLER_ID = 'vertical-nav'; + const MainNavBars = memo(({ className, route, query, children }: Props) => { + const navRef = React.useRef(null); + + useVerticalSpatialNavigation(navRef, GAMEPAD_HANDLER_ID); + return (
{ navMenu={true} /> { +const VerticalNavBar = React.memo(React.forwardRef(({ className, selected, tabs }, ref) => { const { t } = useTranslation(); return ( -