From dc867e84f427bd0292815d73d2e3953c1fd382a8 Mon Sep 17 00:00:00 2001 From: Usman Baig Date: Thu, 26 Mar 2026 00:10:40 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20glass=20instant,=20content=20fades=20in?= =?UTF-8?q?=20=E2=80=94=20backdrop=20and=20blur=20separate=20from=20animat?= =?UTF-8?q?ion?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../settings/unified/UnifiedSettingsModal.tsx | 16 +++++++--------- styles/globals.css | 9 +++++++++ 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/components/settings/unified/UnifiedSettingsModal.tsx b/components/settings/unified/UnifiedSettingsModal.tsx index 3bfb955..6a865a0 100644 --- a/components/settings/unified/UnifiedSettingsModal.tsx +++ b/components/settings/unified/UnifiedSettingsModal.tsx @@ -374,7 +374,7 @@ export default function UnifiedSettingsModal() { return ( <> - {/* Backdrop */} + {/* Backdrop — fades in/out */}
- {/* Modal outer wrapper — fades in/out, glass panel inside stays always-opaque */} + {/* Glass panel — always mounted, instant show/hide, blur always composited */}
e.stopPropagation()} > - {/* All content gated by isOpen — empty glass box when closed (GPU keeps blur warm) */} + {/* Content fades in/out independently — glass stays solid */} {isOpen && ( - <> +
{/* Header */}
@@ -470,7 +468,7 @@ export default function UnifiedSettingsModal() { )} - +
)}
diff --git a/styles/globals.css b/styles/globals.css index 59c2bb5..ceeec13 100644 --- a/styles/globals.css +++ b/styles/globals.css @@ -107,4 +107,13 @@ .animate-float { animation: float 6s ease-in-out infinite; } + + @keyframes fadeIn { + from { opacity: 0; } + to { opacity: 1; } + } + + .animate-fade-in { + animation: fadeIn 150ms ease-out; + } }