mirror of
https://github.com/flutter/flutter.git
synced 2026-02-15 15:23:32 +08:00
42 lines
1.2 KiB
Dart
42 lines
1.2 KiB
Dart
// Copyright 2014 The Flutter Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
typedef OnObservation = void Function(Route<dynamic>? route, Route<dynamic>? previousRoute);
|
|
|
|
/// A trivial observer for testing the navigator.
|
|
class TestObserver extends NavigatorObserver {
|
|
OnObservation? onPushed;
|
|
OnObservation? onPopped;
|
|
OnObservation? onRemoved;
|
|
OnObservation? onReplaced;
|
|
OnObservation? onStartUserGesture;
|
|
|
|
@override
|
|
void didPush(Route<dynamic> route, Route<dynamic>? previousRoute) {
|
|
onPushed?.call(route, previousRoute);
|
|
}
|
|
|
|
@override
|
|
void didPop(Route<dynamic> route, Route<dynamic>? previousRoute) {
|
|
onPopped?.call(route, previousRoute);
|
|
}
|
|
|
|
@override
|
|
void didRemove(Route<dynamic> route, Route<dynamic>? previousRoute) {
|
|
onRemoved?.call(route, previousRoute);
|
|
}
|
|
|
|
@override
|
|
void didReplace({ Route<dynamic>? oldRoute, Route<dynamic>? newRoute }) {
|
|
onReplaced?.call(newRoute, oldRoute);
|
|
}
|
|
|
|
@override
|
|
void didStartUserGesture(Route<dynamic> route, Route<dynamic>? previousRoute) {
|
|
onStartUserGesture?.call(route, previousRoute);
|
|
}
|
|
}
|