mirror of
https://github.com/kuhyx/todo-app.git
synced 2026-11-11 19:34:02 +01:00
Glyph + spoken label replaces every app-written string the guard found: empty states, tile meta, sheet dates/fields, date presets, template/section headings, status footer, snackbars, GitHub and cloud-image results, upload/download badges, Material tooltips. Guard tests (text_free_*_test) walk the painted tree. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
24 lines
864 B
Dart
24 lines
864 B
Dart
/// The notes list's empty state as a picture, not a sentence.
|
|
library;
|
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
/// A large muted glyph: an empty inbox when there are no notes at all, a
|
|
/// crossed-out filter when the current filter hides every note (the filter
|
|
/// button's badge is the second channel saying a filter is on).
|
|
class EmptyNotesCue extends StatelessWidget {
|
|
/// Creates the cue; [filtered] picks the filter variant.
|
|
const EmptyNotesCue({required this.filtered, super.key});
|
|
|
|
/// Whether a filter is active (notes may exist but none match).
|
|
final bool filtered;
|
|
|
|
@override
|
|
Widget build(BuildContext context) => Icon(
|
|
filtered ? Icons.filter_alt_off_outlined : Icons.inbox_outlined,
|
|
size: 64,
|
|
color: Theme.of(context).colorScheme.outline,
|
|
semanticLabel: filtered ? 'No notes match these filters' : 'No notes yet',
|
|
);
|
|
}
|