From b2b8e250ba545502c6592906ef9aa952a3590a7b Mon Sep 17 00:00:00 2001 From: Hadrien Milano Date: Fri, 4 Dec 2020 00:29:44 +0100 Subject: [PATCH 1/2] fix(v2): dynamic dark mode detection without toggle widget --- packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts b/packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts index aa2669a6d42e..b3ceaf1b05d2 100644 --- a/packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts +++ b/packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts @@ -38,7 +38,7 @@ const storeTheme = (newTheme) => { const useTheme = (): useThemeReturns => { const { - colorMode: {disableSwitch = false}, + colorMode: {disableSwitch = false, respectPrefersColorScheme = true}, } = useThemeConfig(); const [theme, setTheme] = useState(getInitialTheme); @@ -71,7 +71,7 @@ const useTheme = (): useThemeReturns => { }, [setTheme]); useEffect(() => { - if (disableSwitch) { + if (disableSwitch && !respectPrefersColorScheme) { return; } From 2ffa4df09a388e7da42d39e24085d9a126e5986b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Lorber?= Date: Fri, 4 Dec 2020 13:16:23 +0100 Subject: [PATCH 2/2] Update packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts --- packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts b/packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts index b3ceaf1b05d2..b3a58630bd47 100644 --- a/packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts +++ b/packages/docusaurus-theme-classic/src/theme/hooks/useTheme.ts @@ -38,7 +38,7 @@ const storeTheme = (newTheme) => { const useTheme = (): useThemeReturns => { const { - colorMode: {disableSwitch = false, respectPrefersColorScheme = true}, + colorMode: {disableSwitch, respectPrefersColorScheme}, } = useThemeConfig(); const [theme, setTheme] = useState(getInitialTheme);