fix(studyset): an empty tab says so in its middle, as empty paths do
With no flashcards, notes or files yet, the tab said so in an outlined box at its top, the icon at its start, while the study plan with no paths says it in the middle of what is left, the icon above. Every empty tab now says it the way the paths do. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MMm7usAo6q9ZZRoPkWjoxi Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
f5600921b8
commit
db4b4df200
1 changed files with 7 additions and 41 deletions
|
|
@ -15,7 +15,9 @@ import 'package:halkyon_learn_flutter/src/core/theme/theme_extras.dart';
|
||||||
import 'package:halkyon_learn_flutter/src/core/widget/app_loading_indicator.dart';
|
import 'package:halkyon_learn_flutter/src/core/widget/app_loading_indicator.dart';
|
||||||
import 'package:halkyon_learn_flutter/src/core/widget/collapsing_row.dart';
|
import 'package:halkyon_learn_flutter/src/core/widget/collapsing_row.dart';
|
||||||
import 'package:halkyon_learn_flutter/src/core/widget/count_badge.dart';
|
import 'package:halkyon_learn_flutter/src/core/widget/count_badge.dart';
|
||||||
|
import 'package:halkyon_learn_flutter/src/core/widget/empty_list_message.dart';
|
||||||
import 'package:halkyon_learn_flutter/src/core/widget/reorder_toggle.dart';
|
import 'package:halkyon_learn_flutter/src/core/widget/reorder_toggle.dart';
|
||||||
|
import 'package:halkyon_learn_flutter/src/core/widget/sliver_centered.dart';
|
||||||
import 'package:halkyon_learn_flutter/src/feature/card/bloc/card_list_bloc.dart';
|
import 'package:halkyon_learn_flutter/src/feature/card/bloc/card_list_bloc.dart';
|
||||||
import 'package:halkyon_learn_flutter/src/feature/card/widget/card_list.dart';
|
import 'package:halkyon_learn_flutter/src/feature/card/widget/card_list.dart';
|
||||||
import 'package:halkyon_learn_flutter/src/feature/learning_path/bloc/path_list_bloc.dart';
|
import 'package:halkyon_learn_flutter/src/feature/learning_path/bloc/path_list_bloc.dart';
|
||||||
|
|
@ -510,53 +512,17 @@ class const _SliverSectionLoading() extends StatelessWidget {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// A section with nothing in it yet: what it would hold, and how to add
|
/// A tab with nothing in it yet: what it would hold, and how to add it,
|
||||||
/// it, in an outlined box.
|
/// in the middle of what is left, as an empty list of paths says it.
|
||||||
class const _SliverEmptySection({
|
class const _SliverEmptySection({
|
||||||
required final IconData icon,
|
required final IconData icon,
|
||||||
required final String title,
|
required final String title,
|
||||||
required final String hint,
|
required final String hint,
|
||||||
}) extends StatelessWidget {
|
}) extends StatelessWidget {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) => SliverCentered(
|
||||||
final theme = Theme.of(context);
|
child: EmptyListMessage(icon: icon, title: title, hint: hint),
|
||||||
final colors = theme.colorScheme;
|
|
||||||
return SliverToBoxAdapter(
|
|
||||||
child: Padding(
|
|
||||||
padding: const EdgeInsets.fromLTRB(12, 4, 12, 4),
|
|
||||||
child: DecoratedBox(
|
|
||||||
decoration: BoxDecoration(
|
|
||||||
border: Border.all(color: colors.outlineVariant),
|
|
||||||
borderRadius: BorderRadius.circular(12),
|
|
||||||
),
|
|
||||||
child: Padding(
|
|
||||||
padding: const EdgeInsets.all(16),
|
|
||||||
child: Row(
|
|
||||||
children: [
|
|
||||||
Icon(icon, size: 28, color: colors.onSurfaceVariant),
|
|
||||||
const SizedBox(width: 16),
|
|
||||||
Expanded(
|
|
||||||
child: Column(
|
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
|
||||||
children: [
|
|
||||||
Text(title, style: theme.textTheme.titleSmall),
|
|
||||||
const SizedBox(height: 2),
|
|
||||||
Text(
|
|
||||||
hint,
|
|
||||||
style: theme.textTheme.bodySmall?.copyWith(
|
|
||||||
color: colors.onSurfaceVariant,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
);
|
);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// The studyset [studysetId]'s progress, with everything inside it: how much
|
/// The studyset [studysetId]'s progress, with everything inside it: how much
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue