Commit f43014e
committed
feat: spring navigation system + premium splash + upgraded admin drawer
SPLASH SCREEN (AlphaSplashScreen.kt)
- Phase 1: NeuralPulse logo spring scale-in (dampingRatio=0.55, StiffnessMediumLow)
- Phase 2: SHA-256 partner attestation text animation
- Phase 3: Canvas arc smoothly draws 65/100 Vulnerability Index (DampingRatioNoBouncy)
Score counter animates 0->65 via animateIntAsState + tween(900ms)
- Phase 4: Alert banner elastic slide-up (DampingRatioLowBouncy, StiffnessMedium)
- Auto-advances to DashboardScreen after 2.4s via AnimatedContent fade
SPRING NAV BAR (AlphaSpringNavBar.kt) — replaces stock NavigationBar
- 5 tabs per spec: Command / AI Scanner / Clinics PHR / SmartHome / Profile
- Icons: Analytics / PhotoCamera / HistoryEdu / Thermostat / AccountCircle
- Electric Blue pill 0x1A3B82F6 (10% opacity), DampingRatioLowBouncy spring pop
- Icon scale: 0.88->1.0 selection pop with StiffnessHigh spring (overshoot)
- Text tint: AlphaAccentBlue on active, no layout jitter (fixed size column)
- AMOLED black 0xFF0A0A0C surface with 0.5dp top separator
NAVIGATION LIFECYCLE BINDER (AlphaNavigationLifecycleBinder.kt)
- DisposableEffect per route: cleans hardware leases on tab exit
ai_scanner -> CameraX + TFLite INT8 NPU memory released
smart_home -> SmartThings socket + Matter listener suspended
clinics_phr -> Health Connect client session closed
command -> diagnostic log only (WatchSyncOrchestrator re-engages on enter)
- AlphaRoutes object: canonical route string constants per tab index
ADMIN DRAWER FULL UPGRADE (AlphaAdminDrawer.kt)
- Scrim: animateFloatAsState 0->0.4 alpha + Modifier.blur(3.dp) Gaussian on content
- Entry: ModalNavigationDrawer with DampingRatioLowBouncy elastic overshoot
- Width: 82% (Modifier.fillMaxWidth(0.82f))
- Header: PARTNER SECURITY ATTESTATION + SHA-256 Verified Node + App ID monospace
- X close button (morph icon, top-right of drawer)
- Button 1 (Export HL7 FHIR Logs):
animateFloatAsState spinner on Sync icon during 1.4s export simulation
-> CheckCircle + AlphaMintGreen 'FHIR Export Bundle Ready' on complete
- Button 2 (Force Store Sync):
360-deg icon rotation via animateFloatAsState tween(700ms)
- Button 3 (Gemma SLM Constraints):
AnimatedVisibility expandVertically(DampingRatioLowBouncy) slider tray
Slider range 0.5-4.0GB, live 'Memory Target: X.XGB' readout
- Button 4 (NPU Memory Allocation):
CPU / GPU / NPU chip toggle row with AlphaAccentBlue border highlight
- Button 5 (FDA Wellness Compliance):
AnimatedContent slideInHorizontally full-screen documentation view
NeuralPulseDataCard classification matrix + design boundary declaration
Back arrow returns to drawer
- Dismiss paths: scrim tap | X icon | detectHorizontalDragGestures >30f edge swipe
MAIN ACTIVITY UPGRADES (MainActivity.kt)
- showSplash state + AnimatedContent fadeIn/fadeOut splash->dashboard
- AlphaSpringNavBar replaces NavigationBar (5 tabs)
- AlphaNavigationLifecycleBinder wraps tab content
- AnimatedContent tab transitions: slideInVertically+fadeIn / slideOutVertically+fadeOut
directional: +24dp when moving forward, -24dp when moving back
- applicationContext replaces this in Toast.makeText (composable lambda compat)
Build: :app + :wear compileDebugKotlin BUILD SUCCESSFUL, 0 errors1 parent 618c590 commit f43014e
5 files changed
Lines changed: 1063 additions & 214 deletions
File tree
- app/src/main/java/com/alphahealth/monitor/dashboard
0 commit comments