// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

[DartPackage="mojo_services"]
module mojo;

import "mojo/public/interfaces/network/url_request.mojom";

// Expresses a preference for where a navigation will be performed.
enum Target {
  // No preference
  DEFAULT,

  // In the same ViewManager node that the navigation was initiated
  SOURCE_NODE,

  // In a new ViewManager node
  NEW_NODE,
};

// Embedders that support navigation of implement this interface.
[ServiceName="mojo::NavigatorHost"]
interface NavigatorHost {
  RequestNavigate(Target target, URLRequest request);
  RequestNavigateHistory(int32 delta);

  // Applications call this to inform hosts of navigations they performed
  // locally. For example, pushState() navigations in an HTML application.
  DidNavigateLocally(string url);
};
