新增毛玻璃主题

This commit is contained in:
DelLevin-Home
2026-08-12 22:28:33 +08:00
parent be3299a0b3
commit ad6ab51afd
78 changed files with 672 additions and 237 deletions

View File

@@ -10,6 +10,7 @@ import '../movies/movie_detail_page.dart';
import '../book/book_detail_page.dart';
import '../game/game_detail_page.dart';
import 'person_form_page.dart';
import '../../widgets/app_overlay.dart';
/// 人物档案详情页
class PersonDetailPage extends StatefulWidget {
@@ -464,7 +465,7 @@ class _PersonDetailPageState extends State<PersonDetailPage> {
void _showDeleteDialog(Person person) {
final colors = Theme.of(context).colorScheme;
showDialog(
appDialog(
context: context,
builder: (context) => AlertDialog(
backgroundColor: colors.surface,

View File

@@ -11,6 +11,7 @@ import '../../utils/image_path_helper.dart';
import '../../utils/toast_util.dart';
import '../../widgets/fade_in_local_image.dart';
import '../../widgets/genre_selector_page.dart';
import '../../widgets/app_overlay.dart';
/// 人物编辑/添加页面
class PersonFormPage extends StatefulWidget {
@@ -259,7 +260,7 @@ class _PersonFormPageState extends State<PersonFormPage> {
void _showPhotoOptions() {
final colors = Theme.of(context).colorScheme;
showModalBottomSheet(
appModalBottomSheet(
context: context,
backgroundColor: colors.surface,
shape: const RoundedRectangleBorder(borderRadius: BorderRadius.vertical(top: Radius.circular(16))),
@@ -311,7 +312,7 @@ class _PersonFormPageState extends State<PersonFormPage> {
Future<void> _pickPhotoFromUrl() async {
String? url;
final confirmed = await showDialog<bool>(context: context, builder: (ctx) {
final confirmed = await appDialog<bool>(context: context, builder: (ctx) {
final urlCtrl = TextEditingController();
final colors = Theme.of(ctx).colorScheme;
return AlertDialog(
@@ -503,7 +504,7 @@ class _PersonFormPageState extends State<PersonFormPage> {
Future<bool> _confirmLeave() async {
if (!_hasContent()) return true;
final colors = Theme.of(context).colorScheme;
final result = await showDialog<bool>(
final result = await appDialog<bool>(
context: context,
builder: (ctx) => AlertDialog(
backgroundColor: colors.surface, elevation: 0,

View File

@@ -8,6 +8,7 @@ import '../../utils/toast_util.dart';
import '../../widgets/person_avatar.dart';
import 'person_detail_page.dart';
import 'person_form_page.dart';
import '../../widgets/app_overlay.dart';
/// 人物列表页
class PersonListPage extends StatefulWidget {
@@ -526,7 +527,7 @@ class _PersonListPageState extends State<PersonListPage> {
Future<void> _refreshRelations() async {
final provider = context.read<AppProvider>();
// 显示加载弹窗
showDialog(
appDialog(
context: context,
barrierDismissible: false,
builder: (ctx) => PopScope(