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 #import "ios/web/public/web_state/web_state_observer_bridge.h" | 5 #import "ios/web/public/web_state/web_state_observer_bridge.h" |
6 | 6 |
7 namespace web { | 7 namespace web { |
8 | 8 |
9 WebStateObserverBridge::WebStateObserverBridge(web::WebState* webState, | 9 WebStateObserverBridge::WebStateObserverBridge(web::WebState* webState, |
10 id<CRWWebStateObserver> observer) | 10 id<CRWWebStateObserver> observer) |
11 : web::WebStateObserver(webState), observer_(observer) { | 11 : web::WebStateObserver(webState), observer_(observer) { |
12 } | 12 } |
13 | 13 |
14 WebStateObserverBridge::~WebStateObserverBridge() { | 14 WebStateObserverBridge::~WebStateObserverBridge() { |
15 } | 15 } |
16 | 16 |
| 17 void WebStateObserverBridge::NavigationItemCommitted( |
| 18 const web::LoadCommittedDetails& load_detatils) { |
| 19 SEL selector = @selector(webState:didCommitNavigationWithDetails:); |
| 20 if ([observer_ respondsToSelector:selector]) { |
| 21 [observer_ webState:web_state() |
| 22 didCommitNavigationWithDetails:load_detatils]; |
| 23 } |
| 24 } |
| 25 |
17 void WebStateObserverBridge::PageLoaded( | 26 void WebStateObserverBridge::PageLoaded( |
18 web::PageLoadCompletionStatus load_completion_status) { | 27 web::PageLoadCompletionStatus load_completion_status) { |
19 SEL selector = @selector(pageLoaded:); | 28 SEL selector = @selector(webStateDidLoadPage:); |
20 if ([observer_ respondsToSelector:selector]) | 29 if ([observer_ respondsToSelector:selector]) |
21 [observer_ pageLoaded:web_state()]; | 30 [observer_ webStateDidLoadPage:web_state()]; |
22 } | 31 } |
23 | 32 |
24 void WebStateObserverBridge::DocumentSubmitted( | 33 void WebStateObserverBridge::InsterstitialDismissed() { |
25 const std::string& form_name, bool user_interaction) { | 34 SEL selector = @selector(webStateDidDismissInterstitial:); |
26 SEL selector = @selector(documentSubmitted:formName:userInteraction:); | 35 if ([observer_ respondsToSelector:selector]) |
| 36 [observer_ webStateDidDismissInterstitial:web_state()]; |
| 37 } |
| 38 |
| 39 void WebStateObserverBridge::UrlHashChanged() { |
| 40 SEL selector = @selector(webStateDidChangeURLHash:); |
| 41 if ([observer_ respondsToSelector:selector]) |
| 42 [observer_ webStateDidChangeURLHash:web_state()]; |
| 43 } |
| 44 |
| 45 void WebStateObserverBridge::HistoryStateChanged() { |
| 46 SEL selector = @selector(webStateDidChangeHistoryState:); |
| 47 if ([observer_ respondsToSelector:selector]) |
| 48 [observer_ webStateDidChangeHistoryState:web_state()]; |
| 49 } |
| 50 |
| 51 void WebStateObserverBridge::DocumentSubmitted(const std::string& form_name, |
| 52 bool user_initiated) { |
| 53 SEL selector = |
| 54 @selector(webState:didSubmitDocumentWithFormNamed:userInitiated:); |
27 if ([observer_ respondsToSelector:selector]) { | 55 if ([observer_ respondsToSelector:selector]) { |
28 [observer_ documentSubmitted:web_state() | 56 [observer_ webState:web_state() |
29 formName:form_name | 57 didSubmitDocumentWithFormNamed:form_name |
30 userInteraction:user_interaction]; | 58 userInitiated:user_initiated]; |
31 } | 59 } |
32 } | 60 } |
33 | 61 |
34 void WebStateObserverBridge::FormActivityRegistered( | 62 void WebStateObserverBridge::FormActivityRegistered( |
35 const std::string& form_name, | 63 const std::string& form_name, |
36 const std::string& field_name, | 64 const std::string& field_name, |
37 const std::string& type, | 65 const std::string& type, |
38 const std::string& value, | 66 const std::string& value, |
39 int key_code, | 67 int key_code, |
40 bool error) { | 68 bool input_missing) { |
41 SEL selector = | 69 SEL selector = @selector(webState: |
42 @selector(formActivity:formName:fieldName:type:value:keyCode:error:); | 70 didRegisterFormActivityWithFormNamed: |
| 71 fieldName: |
| 72 type: |
| 73 value: |
| 74 keyCode: |
| 75 inputMissing:); |
43 if ([observer_ respondsToSelector:selector]) { | 76 if ([observer_ respondsToSelector:selector]) { |
44 [observer_ formActivity:web_state() | 77 [observer_ webState:web_state() |
45 formName:form_name | 78 didRegisterFormActivityWithFormNamed:form_name |
46 fieldName:field_name | 79 fieldName:field_name |
47 type:type | 80 type:type |
48 value:value | 81 value:value |
49 keyCode:key_code | 82 keyCode:key_code |
50 error:error]; | 83 inputMissing:input_missing]; |
51 } | 84 } |
52 } | 85 } |
53 | 86 |
| 87 void WebStateObserverBridge::AutocompleteRequested(const GURL& source_url, |
| 88 const std::string& form_name, |
| 89 bool user_initiated) { |
| 90 SEL selector = @selector(webState: |
| 91 requestAutocompleteForFormNamed: |
| 92 sourceURL: |
| 93 userInitiated:); |
| 94 if ([observer_ respondsToSelector:selector]) { |
| 95 [observer_ webState:web_state() |
| 96 requestAutocompleteForFormNamed:form_name |
| 97 sourceURL:source_url |
| 98 userInitiated:user_initiated]; |
| 99 } |
| 100 } |
| 101 |
| 102 void WebStateObserverBridge::FaviconUrlUpdated( |
| 103 const std::vector<FaviconURL>& candidates) { |
| 104 SEL selector = @selector(webState:didUpdateFaviconURLCandidates:); |
| 105 if ([observer_ respondsToSelector:selector]) |
| 106 [observer_ webState:web_state() didUpdateFaviconURLCandidates:candidates]; |
| 107 } |
| 108 |
54 void WebStateObserverBridge::WebStateDestroyed() { | 109 void WebStateObserverBridge::WebStateDestroyed() { |
55 SEL selector = @selector(webStateDestroyed:); | 110 SEL selector = @selector(webStateDestroyed:); |
56 if ([observer_ respondsToSelector:selector]) { | 111 if ([observer_ respondsToSelector:selector]) { |
57 // |webStateDestroyed:| may delete |this|, so don't expect |this| to be | 112 // |webStateDestroyed:| may delete |this|, so don't expect |this| to be |
58 // valid afterwards. | 113 // valid afterwards. |
59 [observer_ webStateDestroyed:web_state()]; | 114 [observer_ webStateDestroyed:web_state()]; |
60 } | 115 } |
61 } | 116 } |
62 | 117 |
63 } // namespace web | 118 } // namespace web |
OLD | NEW |