Skip to content

Commit

Permalink
fix: add fallback media query listeners for older browsers
Browse files Browse the repository at this point in the history
  • Loading branch information
byCedric committed Mar 4, 2021
1 parent db91622 commit 94343c7
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions src/theme/ThemeProvider.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,12 @@ export function ThemeProvider(props: ThemeProviderProps) {

const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');

mediaQuery.addEventListener('change', onThemeChange);
try {
mediaQuery.addEventListener('change', onThemeChange);
} catch {
// Fallback to old-style listeing for changes, for Safari and IE
mediaQuery.addListener(onThemeChange);
}

const themePreference = window.localStorage.getItem('data-expo-theme');

Expand All @@ -50,7 +55,12 @@ export function ThemeProvider(props: ThemeProviderProps) {
}

return function unMount() {
mediaQuery.removeEventListener('change', onThemeChange);
try {
mediaQuery.removeEventListener('change', onThemeChange);
} catch {
// Fallback to old-style listeing for changes, for Safari and IE
mediaQuery.removeListener(onThemeChange);
}
};
}, []);

Expand Down

0 comments on commit 94343c7

Please sign in to comment.