Skip to content

Commit 69a24e8

Browse files
committed
Make AppContext Great Again
1 parent d18a11d commit 69a24e8

File tree

1 file changed

+21
-8
lines changed

1 file changed

+21
-8
lines changed

src/client/App.tsx

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import React, { useEffect } from 'react'
1+
import React, { useEffect, useRef } from 'react'
22
import { Outlet, useLocation, useParams } from 'react-router-dom'
33
import { SnackbarProvider } from 'notistack'
44
import { initShibbolethPinger } from 'unfuck-spa-shibboleth-session'
@@ -7,6 +7,7 @@ import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider'
77
import { fi } from 'date-fns/locale'
88
import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFnsV3'
99
import { Box, Button, CssBaseline, Snackbar } from '@mui/material'
10+
import { AppContext } from './util/context'
1011

1112
import { PUBLIC_URL } from '../config'
1213
import { User } from './types'
@@ -71,6 +72,7 @@ const App = () => {
7172
const theme = useTheme()
7273
const { courseId } = useParams()
7374
const location = useLocation()
75+
const appRef = useRef<HTMLDivElement>(null)
7476

7577
const { user, isLoading } = useCurrentUser()
7678

@@ -94,14 +96,25 @@ const App = () => {
9496
<CssBaseline />
9597
<LocalizationProvider dateAdapter={AdapterDateFns} adapterLocale={fi}>
9698
<SnackbarProvider preventDuplicate>
97-
<Box minHeight="100vh" height="100vh" display="flex" flexDirection="column">
98-
<NavBar />
99-
<Box sx={{ flex: 1 }}>
100-
<Outlet />
99+
<AppContext.Provider value={appRef}>
100+
<Box
101+
sx={{
102+
display: 'flex',
103+
flexDirection: 'column',
104+
minHeight: '100vh',
105+
height: '100vh',
106+
overflowY: 'auto',
107+
}}
108+
ref={appRef}
109+
>
110+
<NavBar />
111+
<Box sx={{ flex: 1 }}>
112+
<Outlet />
113+
</Box>
114+
<Footer />
101115
</Box>
102-
<Footer />
103-
</Box>
104-
<AdminLoggedInAsBanner />
116+
<AdminLoggedInAsBanner />
117+
</AppContext.Provider>
105118
</SnackbarProvider>
106119
</LocalizationProvider>
107120
</ThemeProvider>

0 commit comments

Comments
 (0)