From fa80f0c10bbbdf3be459e90dcc1a02a1184b847e Mon Sep 17 00:00:00 2001
From: Jed Fox <git@jedfox.com>
Date: Wed, 31 Aug 2022 16:07:48 -0400
Subject: [PATCH] Auto-expand Tools sidebar section when a page within it is
 navigated to

---
 packages/loot-design/src/components/sidebar.js | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/packages/loot-design/src/components/sidebar.js b/packages/loot-design/src/components/sidebar.js
index a0fd526f6..b0b8c9c30 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
-- 
GitLab