feat: AI Agent 处理器扩展 + 服药打卡确认链路 + AI 气泡配色微调 + 数据刷新 providers 抽离 + 多端页面细节调整

This commit is contained in:
MingNian
2026-07-20 17:12:00 +08:00
parent 9cea41705e
commit 0cb5b8e85a
45 changed files with 1435 additions and 276 deletions

View File

@@ -292,13 +292,7 @@ class _TrendPageState extends ConsumerState<TrendPage> {
shape: const RoundedRectangleBorder(
borderRadius: BorderRadius.vertical(top: Radius.circular(20)),
),
builder: (ctx) => Padding(
padding: EdgeInsets.only(
bottom: MediaQuery.of(ctx).viewInsets.bottom,
left: 20,
right: 20,
top: 20,
),
builder: (ctx) => _KeyboardInsetPadding(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
@@ -415,6 +409,7 @@ class _TrendPageState extends ConsumerState<TrendPage> {
@override
Widget build(BuildContext context) {
return GradientScaffold(
resizeToAvoidBottomInset: false,
appBar: AppBar(
leading: IconButton(
icon: const Icon(Icons.arrow_back),
@@ -1304,6 +1299,25 @@ class _TrendPageState extends ConsumerState<TrendPage> {
}
}
class _KeyboardInsetPadding extends StatelessWidget {
final Widget child;
const _KeyboardInsetPadding({required this.child});
@override
Widget build(BuildContext context) {
return Padding(
padding: EdgeInsets.only(
bottom: MediaQuery.viewInsetsOf(context).bottom,
left: 20,
right: 20,
top: 20,
),
child: RepaintBoundary(child: child),
);
}
}
class _StatisticItem extends StatelessWidget {
final String label;
final String value;