1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
7 import "network/public/interfaces/url_loader.mojom";
8 import "components/view_manager/public/interfaces/view_tree.mojom";
10 interface WebViewClient {
11 // Page-generated request for a top level frame navigation.
12 TopLevelNavigate(mojo.URLRequest request);
14 // Loading and progress notifications.
15 LoadingStateChanged(bool is_loading);
16 ProgressChanged(double progress);
18 // TODO(beng): also forward text direction.
19 TitleChanged(string? title);
23 // Navigate the top level frame to |request|.
24 LoadRequest(mojo.URLRequest request);
26 // Provide a ViewTreeClient for this specific WebView.
27 GetViewTreeClient(mojo.ViewTreeClient& view_tree_client);
30 interface WebViewFactory {
31 CreateWebView(WebViewClient client, WebView& web_view);