From 5f57f22e697c2a2d36eca5173c980a91c990221c Mon Sep 17 00:00:00 2001 From: spencrmartin Date: Wed, 14 Jan 2026 10:03:58 -0500 Subject: [PATCH] fix: resolve tile animation flickering and jerky size changes in overlay mode - Remove inline opacity styles that conflicted with CSS animations - Simplify nav-tile-in animation to only fade opacity (no transforms) - Add layout-ready state to prevent animation before grid calculates sizes - Add min-h-[120px] to tiles to give browser size hints - Add auto-rows-fr to grid for consistent row sizing - Reduce animation duration from 0.5s to 0.3s for snappier feel - Fix first-render jerk by waiting for layout calculation with requestAnimationFrame --- FRAMER_MOTION_REMOVAL.md | 155 ++++++++++++++++++ .../src/components/Layout/TopNavigation.tsx | 35 +++- ui/desktop/src/styles/main.css | 11 +- 3 files changed, 184 insertions(+), 17 deletions(-) create mode 100644 FRAMER_MOTION_REMOVAL.md diff --git a/FRAMER_MOTION_REMOVAL.md b/FRAMER_MOTION_REMOVAL.md new file mode 100644 index 0000000000..fb3d932c8f --- /dev/null +++ b/FRAMER_MOTION_REMOVAL.md @@ -0,0 +1,155 @@ +# Framer Motion Removal - TopNavigation Component + +## Summary +Successfully refactored `ui/desktop/src/components/Layout/TopNavigation.tsx` to remove ALL framer-motion dependencies and replace them with pure CSS animations. + +## Changes Made + +### 1. Removed Components +- ❌ `` wrapper - replaced with simple conditional rendering +- ❌ `` elements - replaced with standard `
` elements +- ❌ `` elements - replaced with standard `