// 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/foundation.dart'; import 'package:flutter/services.dart'; /// Messages for route change notifications. class RouteNotificationMessages { // This class is not meant to be instantiated or extended; this constructor // prevents instantiation and extension. // ignore: unused_element RouteNotificationMessages._(); /// When the engine is Web notify the platform for a route change. static void maybeNotifyRouteChange(String routeName, String previousRouteName) { if(kIsWeb) { _notifyRouteChange(routeName, previousRouteName); } else { // No op. } } /// Notifies the platform of a route change. /// /// See also: /// /// * [SystemChannels.navigation], which handles subsequent navigation /// requests. static void _notifyRouteChange(String routeName, String previousRouteName) { SystemChannels.navigation.invokeMethod<void>( 'routeUpdated', <String, dynamic>{ 'previousRouteName': previousRouteName, 'routeName': routeName, }, ); } }