feat: retire FOB and sheet; settings as a Mews page and actions on the address bar

This commit is contained in:
randogoth 2026-10-11 12:14:32 +03:00
parent 6f9c0e587a
commit 28ff7ca327
10 changed files with 324 additions and 361 deletions

View file

@ -8,7 +8,6 @@ import 'package:mews/database/database.dart';
import 'package:mews/l10n/strings.dart';
import 'package:mews/mews/document.dart';
import 'package:mews/presentation/app.dart';
import 'package:mews/presentation/reader/fob.dart';
import 'package:mews/presentation/reader/mews_page_view.dart';
import 'package:mews/presentation/reader/palettes.dart';
@ -20,16 +19,15 @@ Future<MewsApp> _app() async {
}
void main() {
testWidgets('starts with the address bar and the FOB on screen', (tester) async {
testWidgets('starts with the address bar and its icons', (tester) async {
await tester.pumpWidget(await _app());
await tester.pumpAndSettle();
expect(find.byType(TextField), findsOneWidget);
expect(find.text('Enter a web address'), findsOneWidget);
// The FOB is on screen from the beginning and hides only while the
// reader scrolls down.
final fob = tester.widget<Fob>(find.byType(Fob));
expect(fob.visible, isTrue);
// Settings opens from the left icon; no floating button remains.
expect(find.byIcon(Icons.tune), findsOneWidget);
expect(find.byType(FloatingActionButton), findsNothing);
});
testWidgets('renders a page and follows links', (tester) async {