diff --git a/packages/loot-design/src/components/sidebar.js b/packages/loot-design/src/components/sidebar.js index a0fd526f6d4bac23172e291dfe74d6cfe4a4dac8..b0b8c9c304743225980ff4bb0a71ab84a9f5024d 100644 --- a/packages/loot-design/src/components/sidebar.js +++ b/packages/loot-design/src/components/sidebar.js @@ -1,4 +1,4 @@ -import React, { useState, useMemo, useCallback } from 'react'; +import React, { useState, useMemo, useCallback, useEffect } from 'react'; import { useDispatch } from 'react-redux'; import { withRouter } from 'react-router-dom'; import { css } from 'glamor'; @@ -31,6 +31,7 @@ import { useDraggable, useDroppable, DropHighlight } from './sort.js'; import CheveronUp from '../svg/v1/CheveronUp'; import CheveronDown from '../svg/v1/CheveronDown'; import StoreFrontIcon from '../svg/v1/StoreFront'; +import { useLocation } from 'react-router'; export const SIDEBAR_WIDTH = 240; @@ -434,8 +435,15 @@ const MenuButton = withRouter(function MenuButton({ history }) { function Tools() { let [isOpen, setOpen] = useState(false); + let location = useLocation(); let onToggle = useCallback(() => setOpen(open => !open), []); let ExpandOrCollapseIcon = isOpen ? CheveronUp : CheveronDown; + + useEffect(() => { + if (['/schedules'].some(route => location.pathname.startsWith(route))) { + setOpen(true); + } + }, [location.pathname]); return ( <> <View