| Index: mojo/dart/packages/mojo_services/lib/mojo/navigation.mojom.dart
 | 
| diff --git a/mojo/dart/packages/mojo_services/lib/mojo/navigation.mojom.dart b/mojo/dart/packages/mojo_services/lib/mojo/navigation.mojom.dart
 | 
| index 4968d4c2ff7a7b8b6f239c5632bf7e42c536c69b..3ce7b4f8685458699b63801463a678db33d3dd57 100644
 | 
| --- a/mojo/dart/packages/mojo_services/lib/mojo/navigation.mojom.dart
 | 
| +++ b/mojo/dart/packages/mojo_services/lib/mojo/navigation.mojom.dart
 | 
| @@ -8,6 +8,8 @@ import 'dart:async';
 | 
|  
 | 
|  import 'package:mojo/bindings.dart' as bindings;
 | 
|  import 'package:mojo/core.dart' as core;
 | 
| +import 'package:mojo/mojo/mojom_types.mojom.dart' as mojom_types;
 | 
| +import 'package:mojo/mojo/service_describer.mojom.dart' as service_describer;
 | 
|  import 'package:mojo/mojo/url_request.mojom.dart' as url_request_mojom;
 | 
|  class Target extends bindings.MojoEnum {
 | 
|    static const DEFAULT = const Target._(0);
 | 
| @@ -60,12 +62,29 @@ class Target extends bindings.MojoEnum {
 | 
|          return 'Target.SOURCE_NODE';
 | 
|        case NEW_NODE:
 | 
|          return 'Target.NEW_NODE';
 | 
| +      default:
 | 
| +        return null;
 | 
|      }
 | 
|    }
 | 
|  
 | 
|    int toJson() => value;
 | 
|  }
 | 
|  
 | 
| +mojom_types.MojomEnum _navigation_Target__() {
 | 
| +  return new mojom_types.MojomEnum()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = "Target")
 | 
| +    ..values = <mojom_types.EnumValue>[new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "DEFAULT")
 | 
| +        ..enumTypeKey = '_navigation_Target__'
 | 
| +        ..intValue = 0,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "SOURCE_NODE")
 | 
| +        ..enumTypeKey = '_navigation_Target__'
 | 
| +        ..intValue = 1,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "NEW_NODE")
 | 
| +        ..enumTypeKey = '_navigation_Target__'
 | 
| +        ..intValue = 2,];
 | 
| +}
 | 
| +
 | 
|  
 | 
|  
 | 
|  class NavigatorHostRequestNavigateParams extends bindings.Struct {
 | 
| @@ -146,6 +165,30 @@ class NavigatorHostRequestNavigateParams extends bindings.Struct {
 | 
|    }
 | 
|  }
 | 
|  
 | 
| +mojom_types.MojomStruct _navigation_NavigatorHost_RequestNavigate_Params__() {
 | 
| +  return new mojom_types.MojomStruct()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = 'NavigatorHostRequestNavigateParams')
 | 
| +    ..fields = <mojom_types.StructField>[
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Target')
 | 
| +        ..type = (new mojom_types.Type()
 | 
| +    ..typeReference = (new mojom_types.TypeReference()
 | 
| +  
 | 
| +    ..identifier = '_navigation_Target__'
 | 
| +    ..typeKey = '_navigation_Target__'
 | 
| +  )),
 | 
| +      
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Request')
 | 
| +        ..type = (new mojom_types.Type()
 | 
| +    ..typeReference = (new mojom_types.TypeReference()
 | 
| +  
 | 
| +    ..identifier = '_url_request_URLRequest__'
 | 
| +    ..typeKey = '_url_request_URLRequest__'
 | 
| +  )),
 | 
| +      ];
 | 
| +}
 | 
| +
 | 
|  
 | 
|  class NavigatorHostRequestNavigateHistoryParams extends bindings.Struct {
 | 
|    static const List<bindings.StructDataHeader> kVersions = const [
 | 
| @@ -213,6 +256,16 @@ class NavigatorHostRequestNavigateHistoryParams extends bindings.Struct {
 | 
|    }
 | 
|  }
 | 
|  
 | 
| +mojom_types.MojomStruct _navigation_NavigatorHost_RequestNavigateHistory_Params__() {
 | 
| +  return new mojom_types.MojomStruct()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = 'NavigatorHostRequestNavigateHistoryParams')
 | 
| +    ..fields = <mojom_types.StructField>[
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Delta')
 | 
| +        ..type = (new mojom_types.Type()..simpleType = mojom_types.SimpleType.INT32),
 | 
| +      ];
 | 
| +}
 | 
| +
 | 
|  
 | 
|  class NavigatorHostDidNavigateLocallyParams extends bindings.Struct {
 | 
|    static const List<bindings.StructDataHeader> kVersions = const [
 | 
| @@ -280,6 +333,18 @@ class NavigatorHostDidNavigateLocallyParams extends bindings.Struct {
 | 
|    }
 | 
|  }
 | 
|  
 | 
| +mojom_types.MojomStruct _navigation_NavigatorHost_DidNavigateLocally_Params__() {
 | 
| +  return new mojom_types.MojomStruct()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = 'NavigatorHostDidNavigateLocallyParams')
 | 
| +    ..fields = <mojom_types.StructField>[
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Url')
 | 
| +        ..type = (new mojom_types.Type()
 | 
| +..stringType = (new mojom_types.StringType()..nullable = false)),
 | 
| +      ];
 | 
| +}
 | 
| +
 | 
| +
 | 
|  const int kNavigatorHost_requestNavigate_name = 0;
 | 
|  const int kNavigatorHost_requestNavigateHistory_name = 1;
 | 
|  const int kNavigatorHost_didNavigateLocally_name = 2;
 | 
| @@ -287,6 +352,35 @@ const int kNavigatorHost_didNavigateLocally_name = 2;
 | 
|  const String NavigatorHostName =
 | 
|        'mojo::NavigatorHost';
 | 
|  
 | 
| +mojom_types.MojomInterface _navigation_NavigatorHost__() {
 | 
| +  return new mojom_types.MojomInterface()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = "NavigatorHost")
 | 
| +    ..interfaceName = "NavigatorHost"
 | 
| +    ..methods = <int, mojom_types.MojomMethod>{
 | 
| +kNavigatorHost_requestNavigate_name: new mojom_types.MojomMethod()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "RequestNavigate")
 | 
| +        ..ordinal = kNavigatorHost_requestNavigate_name..parameters = _navigation_NavigatorHost_RequestNavigate_Params__(),kNavigatorHost_requestNavigateHistory_name: new mojom_types.MojomMethod()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "RequestNavigateHistory")
 | 
| +        ..ordinal = kNavigatorHost_requestNavigateHistory_name..parameters = _navigation_NavigatorHost_RequestNavigateHistory_Params__(),kNavigatorHost_didNavigateLocally_name: new mojom_types.MojomMethod()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "DidNavigateLocally")
 | 
| +        ..ordinal = kNavigatorHost_didNavigateLocally_name..parameters = _navigation_NavigatorHost_DidNavigateLocally_Params__(),
 | 
| +    };
 | 
| +}
 | 
| +
 | 
| +class _NavigatorHostServiceDescription extends service_describer.ServiceDescription {
 | 
| +  // Avoid infinite loop by overriding serviceDescription field.
 | 
| +  final service_describer.ServiceDescription serviceDescription = null;
 | 
| +dynamic getTopLevelInterface([Function responseFactory = null]) {
 | 
| +    return _navigation_NavigatorHost__();
 | 
| +  }
 | 
| +  dynamic getTypeDefinition(String typeKey,[Function responseFactory = null]) {
 | 
| +    return getAllMojomTypeDefinitions()[typeKey];
 | 
| +  }
 | 
| +  dynamic getAllTypeDefinitions([Function responseFactory = null]) {
 | 
| +    return getAllMojomTypeDefinitions();
 | 
| +  }
 | 
| +}
 | 
| +
 | 
|  abstract class NavigatorHost {
 | 
|    void requestNavigate(Target target, url_request_mojom.UrlRequest request);
 | 
|    void requestNavigateHistory(int delta);
 | 
| @@ -312,6 +406,9 @@ class NavigatorHostProxyImpl extends bindings.Proxy {
 | 
|  
 | 
|    String get name => NavigatorHostName;
 | 
|  
 | 
| +  service_describer.ServiceDescription get serviceDescription =>
 | 
| +    new _NavigatorHostServiceDescription();
 | 
| +
 | 
|    void handleResponse(bindings.ServiceMessage message) {
 | 
|      switch (message.header.type) {
 | 
|        default:
 | 
| @@ -488,6 +585,66 @@ class NavigatorHostStub extends bindings.Stub {
 | 
|    }
 | 
|  
 | 
|    int get version => 0;
 | 
| +
 | 
| +  service_describer.ServiceDescription get serviceDescription =>
 | 
| +    new _NavigatorHostServiceDescription();
 | 
| +}
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +var _MojomDesc__ = _initDescriptions();
 | 
| +
 | 
| +Map<String, mojom_types.UserDefinedType> _initDescriptions() {
 | 
| +  var map = new Map<String, mojom_types.UserDefinedType>();
 | 
| +  
 | 
| +  map["_navigation_Target__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..enumType = _navigation_Target__();
 | 
| +
 | 
| +  
 | 
| +  map["_navigation_NavigatorHost_RequestNavigate_Params__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..structType = _navigation_NavigatorHost_RequestNavigate_Params__();
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +  map["_navigation_NavigatorHost_RequestNavigateHistory_Params__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..structType = _navigation_NavigatorHost_RequestNavigateHistory_Params__();
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +  map["_navigation_NavigatorHost_DidNavigateLocally_Params__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..structType = _navigation_NavigatorHost_DidNavigateLocally_Params__();
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +  map["_navigation_NavigatorHost__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..interfaceType = _navigation_NavigatorHost__();
 | 
| +
 | 
| +url_request_mojom.getAllMojomTypeDefinitions().forEach((String s, mojom_types.UserDefinedType udt) {
 | 
| +  map[s] = udt;
 | 
| +});
 | 
| +  return map;
 | 
| +}
 | 
| +
 | 
| +Map<String, mojom_types.UserDefinedType> getAllMojomTypeDefinitions() {
 | 
| +  return _MojomDesc__;
 | 
|  }
 | 
|  
 | 
|  
 | 
| 
 |