🐛 Fix background image didn't apply in certain page

This commit is contained in:
2025-08-10 02:59:28 +08:00
parent 78bf319fb7
commit e6255a340b
3 changed files with 170 additions and 167 deletions

View File

@@ -4,6 +4,7 @@ import 'package:go_router/go_router.dart';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:island/models/poll.dart';
import 'package:island/pods/network.dart';
import 'package:island/widgets/app_scaffold.dart';
import 'package:island/widgets/poll/poll_feedback.dart';
import 'package:material_symbols_icons/symbols.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';
@@ -70,7 +71,7 @@ class CreatorPollListScreen extends HookConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
return Scaffold(
return AppScaffold(
appBar: AppBar(title: const Text('Polls')),
floatingActionButton: FloatingActionButton(
onPressed: () => _createPoll(context),

View File

@@ -114,10 +114,11 @@ class WebFeedEditScreen extends HookConsumerWidget {
return feedAsync.when(
loading:
() =>
const Scaffold(body: Center(child: CircularProgressIndicator())),
() => const AppScaffold(
body: Center(child: CircularProgressIndicator()),
),
error:
(error, stack) => Scaffold(
(error, stack) => AppScaffold(
appBar: AppBar(title: const Text('Error')),
body: Center(child: Text('Error: $error')),
),

View File

@@ -9,6 +9,7 @@ import 'package:gap/gap.dart';
import 'package:island/pods/network.dart';
import 'package:island/widgets/alert.dart';
import 'package:island/models/poll.dart';
import 'package:island/widgets/app_scaffold.dart';
import 'package:uuid/uuid.dart';
class PollEditorState {
@@ -413,7 +414,7 @@ class PollEditorScreen extends ConsumerWidget {
});
}
return Scaffold(
return AppScaffold(
appBar: AppBar(
title: Text(model.id == null ? 'Create Poll' : 'Edit Poll'),
actions: [
@@ -428,7 +429,9 @@ class PollEditorScreen extends ConsumerWidget {
const Gap(8),
],
),
body: SafeArea(
body: Column(
children: [
Expanded(
child: Form(
key: ValueKey(model.id),
child: ListView(
@@ -512,7 +515,8 @@ class PollEditorScreen extends ConsumerWidget {
if (model.questions.isEmpty)
_EmptyState(
title: 'No questions yet',
subtitle: 'Use "Add question" to start building your poll.',
subtitle:
'Use "Add question" to start building your poll.',
)
else
ReorderableListView.builder(
@@ -559,7 +563,10 @@ class PollEditorScreen extends ConsumerWidget {
const Divider(height: 1),
Padding(
padding: const EdgeInsets.all(16),
child: _QuestionEditor(index: index, question: q),
child: _QuestionEditor(
index: index,
question: q,
),
),
],
),
@@ -571,14 +578,7 @@ class PollEditorScreen extends ConsumerWidget {
),
),
),
bottomNavigationBar: Padding(
padding: EdgeInsets.fromLTRB(
16,
8,
16,
16 + MediaQuery.of(context).padding.bottom,
),
child: Row(
Row(
children: [
OutlinedButton.icon(
onPressed: () {
@@ -597,6 +597,7 @@ class PollEditorScreen extends ConsumerWidget {
),
],
),
],
),
);
}