OLD | NEW |
---|---|
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef COMPONENTS_WEB_VIEW_PENDING_WEB_VIEW_LOAD_H_ | 5 #ifndef COMPONENTS_WEB_VIEW_PENDING_WEB_VIEW_LOAD_H_ |
6 #define COMPONENTS_WEB_VIEW_PENDING_WEB_VIEW_LOAD_H_ | 6 #define COMPONENTS_WEB_VIEW_PENDING_WEB_VIEW_LOAD_H_ |
7 | 7 |
8 #include <string> | |
9 | |
8 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
9 #include "mojo/services/network/public/interfaces/url_loader.mojom.h" | 11 #include "mojo/services/network/public/interfaces/url_loader.mojom.h" |
10 | 12 |
11 namespace web_view { | 13 namespace web_view { |
12 | 14 |
13 class FrameConnection; | 15 class FrameConnection; |
14 class WebViewImpl; | 16 class WebViewImpl; |
15 | 17 |
16 // PendingWebViewLoad holds the state necessary to service a load of the main | 18 // PendingWebViewLoad holds the state necessary to service a load of the main |
17 // frame. Once the necessary state has been obtained the load is started. | 19 // frame. Once the necessary state has been obtained the load is started. |
18 class PendingWebViewLoad { | 20 class PendingWebViewLoad { |
19 public: | 21 public: |
20 explicit PendingWebViewLoad(WebViewImpl* web_view); | 22 explicit PendingWebViewLoad(WebViewImpl* web_view); |
21 ~PendingWebViewLoad(); | 23 ~PendingWebViewLoad(); |
22 | 24 |
23 void Init(mojo::URLRequestPtr request); | 25 void Init(mojo::URLRequestPtr request); |
24 | 26 |
25 scoped_ptr<FrameConnection> frame_connection() { | 27 scoped_ptr<FrameConnection> frame_connection() { |
26 return frame_connection_.Pass(); | 28 return frame_connection_.Pass(); |
27 } | 29 } |
28 | 30 |
29 bool is_content_handler_id_valid() const { | 31 bool is_content_handler_id_valid() const { |
30 return is_content_handler_id_valid_; | 32 return is_content_handler_id_valid_; |
31 } | 33 } |
32 | 34 |
35 const std::string& pending_url() const { return pending_url_; } | |
36 | |
33 private: | 37 private: |
34 void OnGotContentHandlerID(); | 38 void OnGotContentHandlerID(); |
35 | 39 |
36 WebViewImpl* web_view_; | 40 WebViewImpl* web_view_; |
37 | 41 |
42 std::string pending_url_; | |
sky
2015/09/23 15:31:44
Can we make this a GURL?
sadrul
2015/09/27 05:29:39
Done. (the new TopLevelNavigationStarted() interfa
| |
38 bool is_content_handler_id_valid_; | 43 bool is_content_handler_id_valid_; |
39 | 44 |
40 scoped_ptr<FrameConnection> frame_connection_; | 45 scoped_ptr<FrameConnection> frame_connection_; |
41 | 46 |
42 DISALLOW_COPY_AND_ASSIGN(PendingWebViewLoad); | 47 DISALLOW_COPY_AND_ASSIGN(PendingWebViewLoad); |
43 }; | 48 }; |
44 | 49 |
45 } // namespace web_view | 50 } // namespace web_view |
46 | 51 |
47 #endif // COMPONENTS_WEB_VIEW_PENDING_WEB_VIEW_LOAD_H_ | 52 #endif // COMPONENTS_WEB_VIEW_PENDING_WEB_VIEW_LOAD_H_ |
OLD | NEW |