UI: Redesign student profile modal into android 17 frosted glass

This commit is contained in:
ssbg04 committed 2026-07-02 13:39:18 +08:00
1 parent 82349d7d2e
commit 91d0ff01b4
1 file changed
+23 -16
@@ -1,4 +1,5 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'dart:ui';
import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart';
import '../../../../core/constants/app_colors.dart'; import '../../../../core/constants/app_colors.dart';
import '../../../../domain/repositories/document_repository.dart' import '../../../../domain/repositories/document_repository.dart'
@@ -25,22 +26,27 @@ void showStudentProfileModal(
? const EdgeInsets.all(12) ? const EdgeInsets.all(12)
: const EdgeInsets.symmetric(horizontal: 80, vertical: 40), : const EdgeInsets.symmetric(horizontal: 80, vertical: 40),
child: ClipRRect( child: ClipRRect(
borderRadius: BorderRadius.circular(12), borderRadius: BorderRadius.circular(16),
child: Container( child: BackdropFilter(
constraints: const BoxConstraints(maxWidth: 620), filter: ImageFilter.blur(sigmaX: 5.0, sigmaY: 5.0),
color: AppColors.pageBackground, child: Container(
child: Column( constraints: const BoxConstraints(maxWidth: 620),
mainAxisSize: MainAxisSize.min, decoration: BoxDecoration(
children: [ color: Colors.white.withValues(alpha: 0.75),
// ── Modal header ── borderRadius: BorderRadius.circular(16),
Container( border: Border.all(color: Colors.white.withValues(alpha: 0.8), width: 1.5),
padding: ),
const EdgeInsets.symmetric(horizontal: 20, vertical: 10), child: Column(
decoration: const BoxDecoration( mainAxisSize: MainAxisSize.min,
color: AppColors.primaryGreen, children: [
borderRadius: // ── Modal header ──
BorderRadius.vertical(top: Radius.circular(12)), Container(
), padding:
const EdgeInsets.symmetric(horizontal: 20, vertical: 10),
decoration: BoxDecoration(
color: AppColors.primaryGreen.withValues(alpha: 0.9),
borderRadius: const BorderRadius.vertical(top: Radius.circular(16)),
),
child: Row( child: Row(
children: [ children: [
const Icon(Icons.person_rounded, const Icon(Icons.person_rounded,
@@ -76,6 +82,7 @@ void showStudentProfileModal(
], ],
), ),
), ),
),
), ),
), ),
); );