// Copyright 2018 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. module content.mojom; import "mojo/public/mojom/base/unguessable_token.mojom"; import "url/mojom/url.mojom"; // The primary interface an application uses to drive a top-level, navigable // content object. Typically this would correspond to e.g. a browser tab, but // it is not strictly necessary that the contents have any graphical presence // within the client application. interface NavigableContents { // Initiates a navigation to |url|. Navigate(url.mojom.Url url); // Creates a visual representation of the navigated contents, which is // maintained by the Content Service. Responds with a |embed_token| which can // be given to Mus in order to authorize embedding of that visual // representation within the client application's own window tree. CreateView() => (mojo_base.mojom.UnguessableToken embed_token); }; // A client interface used by the Content Service to push contents-scoped events // back to the application. interface NavigableContentsClient { // Notifies the client that the NavigableContents has stopped loading // resources pertaining to a prior navigation request. DidStopLoading(); };