From f4901814404a32fc7b0f4a257a2c39556ea9c356 Mon Sep 17 00:00:00 2001 From: Viktor Kasap <73124371+viktorkasap@users.noreply.github.com> Date: Thu, 27 Jun 2024 05:11:32 -0700 Subject: [PATCH] [@mantine/hooks] use-eye-dropper: Fix Opera being incorrectly detected as a supported browser (#6307) * Update use-eye-dropper.ts Added additional check for Opera browser, if it is Opera browser then do not show EyeDropper. * fix: Removed extra indent. --- .../@mantine/hooks/src/use-eye-dropper/use-eye-dropper.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/@mantine/hooks/src/use-eye-dropper/use-eye-dropper.ts b/packages/@mantine/hooks/src/use-eye-dropper/use-eye-dropper.ts index 623d4ea90e4..e95a0612f5b 100644 --- a/packages/@mantine/hooks/src/use-eye-dropper/use-eye-dropper.ts +++ b/packages/@mantine/hooks/src/use-eye-dropper/use-eye-dropper.ts @@ -9,11 +9,15 @@ export interface EyeDropperOpenReturnType { sRGBHex: string; } +function isOpera() { + return navigator.userAgent.includes('OPR'); +} + export function useEyeDropper() { const [supported, setSupported] = useState(false); useIsomorphicEffect(() => { - setSupported(typeof window !== 'undefined' && 'EyeDropper' in window); + setSupported(typeof window !== 'undefined' && !isOpera() && 'EyeDropper' in window); }, []); const open = useCallback(