OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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/web_state/ui/crw_web_controller.h" | 5 #import "ios/web/web_state/ui/crw_web_controller.h" |
6 | 6 |
7 #import <objc/runtime.h> | 7 #import <objc/runtime.h> |
8 #include <cmath> | 8 #include <cmath> |
9 | 9 |
10 #include "base/ios/block_types.h" | 10 #include "base/ios/block_types.h" |
(...skipping 10 matching lines...) Expand all Loading... |
21 #include "base/mac/scoped_nsobject.h" | 21 #include "base/mac/scoped_nsobject.h" |
22 #include "base/memory/scoped_ptr.h" | 22 #include "base/memory/scoped_ptr.h" |
23 #include "base/metrics/histogram.h" | 23 #include "base/metrics/histogram.h" |
24 #include "base/metrics/user_metrics_action.h" | 24 #include "base/metrics/user_metrics_action.h" |
25 #include "base/prefs/pref_service.h" | 25 #include "base/prefs/pref_service.h" |
26 #include "base/strings/string_util.h" | 26 #include "base/strings/string_util.h" |
27 #include "base/strings/sys_string_conversions.h" | 27 #include "base/strings/sys_string_conversions.h" |
28 #include "base/strings/utf_string_conversions.h" | 28 #include "base/strings/utf_string_conversions.h" |
29 #include "base/time/time.h" | 29 #include "base/time/time.h" |
30 #include "base/values.h" | 30 #include "base/values.h" |
| 31 #include "components/url_formatter/url_formatter.h" |
31 #import "ios/net/nsurlrequest_util.h" | 32 #import "ios/net/nsurlrequest_util.h" |
32 #include "ios/public/provider/web/web_ui_ios.h" | 33 #include "ios/public/provider/web/web_ui_ios.h" |
33 #import "ios/web/history_state_util.h" | 34 #import "ios/web/history_state_util.h" |
34 #include "ios/web/interstitials/web_interstitial_impl.h" | 35 #include "ios/web/interstitials/web_interstitial_impl.h" |
35 #import "ios/web/navigation/crw_session_certificate_policy_manager.h" | 36 #import "ios/web/navigation/crw_session_certificate_policy_manager.h" |
36 #import "ios/web/navigation/crw_session_controller.h" | 37 #import "ios/web/navigation/crw_session_controller.h" |
37 #import "ios/web/navigation/crw_session_entry.h" | 38 #import "ios/web/navigation/crw_session_entry.h" |
38 #import "ios/web/navigation/navigation_item_impl.h" | 39 #import "ios/web/navigation/navigation_item_impl.h" |
39 #import "ios/web/navigation/navigation_manager_impl.h" | 40 #import "ios/web/navigation/navigation_manager_impl.h" |
40 #import "ios/web/navigation/web_load_params.h" | 41 #import "ios/web/navigation/web_load_params.h" |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 #import "ios/web/web_state/ui/crw_swipe_recognizer_provider.h" | 73 #import "ios/web/web_state/ui/crw_swipe_recognizer_provider.h" |
73 #import "ios/web/web_state/ui/crw_ui_web_view_web_controller.h" | 74 #import "ios/web/web_state/ui/crw_ui_web_view_web_controller.h" |
74 #import "ios/web/web_state/ui/crw_web_controller+protected.h" | 75 #import "ios/web/web_state/ui/crw_web_controller+protected.h" |
75 #import "ios/web/web_state/ui/crw_web_controller_container_view.h" | 76 #import "ios/web/web_state/ui/crw_web_controller_container_view.h" |
76 #import "ios/web/web_state/ui/crw_wk_web_view_web_controller.h" | 77 #import "ios/web/web_state/ui/crw_wk_web_view_web_controller.h" |
77 #import "ios/web/web_state/web_controller_observer_bridge.h" | 78 #import "ios/web/web_state/web_controller_observer_bridge.h" |
78 #include "ios/web/web_state/web_state_facade_delegate.h" | 79 #include "ios/web/web_state/web_state_facade_delegate.h" |
79 #import "ios/web/web_state/web_state_impl.h" | 80 #import "ios/web/web_state/web_state_impl.h" |
80 #import "net/base/mac/url_conversions.h" | 81 #import "net/base/mac/url_conversions.h" |
81 #include "net/base/net_errors.h" | 82 #include "net/base/net_errors.h" |
82 #include "net/base/net_util.h" | |
83 #import "ui/base/ios/cru_context_menu_holder.h" | 83 #import "ui/base/ios/cru_context_menu_holder.h" |
84 #include "ui/base/page_transition_types.h" | 84 #include "ui/base/page_transition_types.h" |
85 #include "url/gurl.h" | 85 #include "url/gurl.h" |
86 #include "url/url_constants.h" | 86 #include "url/url_constants.h" |
87 | 87 |
88 using base::UserMetricsAction; | 88 using base::UserMetricsAction; |
89 using web::NavigationManagerImpl; | 89 using web::NavigationManagerImpl; |
90 using web::WebState; | 90 using web::WebState; |
91 using web::WebStateImpl; | 91 using web::WebStateImpl; |
92 | 92 |
(...skipping 3473 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3566 std::string href; | 3566 std::string href; |
3567 if (element->GetString("href", &href)) { | 3567 if (element->GetString("href", &href)) { |
3568 mutableInfo[web::kContextLinkURLString] = base::SysUTF8ToNSString(href); | 3568 mutableInfo[web::kContextLinkURLString] = base::SysUTF8ToNSString(href); |
3569 GURL linkURL(href); | 3569 GURL linkURL(href); |
3570 if (linkURL.SchemeIs(url::kJavaScriptScheme)) { | 3570 if (linkURL.SchemeIs(url::kJavaScriptScheme)) { |
3571 title = @"JavaScript"; | 3571 title = @"JavaScript"; |
3572 } else { | 3572 } else { |
3573 DCHECK(web::GetWebClient()); | 3573 DCHECK(web::GetWebClient()); |
3574 const std::string& acceptLangs = web::GetWebClient()->GetAcceptLangs( | 3574 const std::string& acceptLangs = web::GetWebClient()->GetAcceptLangs( |
3575 self.webStateImpl->GetBrowserState()); | 3575 self.webStateImpl->GetBrowserState()); |
3576 base::string16 urlText = net::FormatUrl(GURL(href), acceptLangs); | 3576 base::string16 urlText = |
| 3577 url_formatter::FormatUrl(GURL(href), acceptLangs); |
3577 title = base::SysUTF16ToNSString(urlText); | 3578 title = base::SysUTF16ToNSString(urlText); |
3578 } | 3579 } |
3579 } | 3580 } |
3580 std::string src; | 3581 std::string src; |
3581 if (element->GetString("src", &src)) { | 3582 if (element->GetString("src", &src)) { |
3582 mutableInfo[web::kContextImageURLString] = base::SysUTF8ToNSString(src); | 3583 mutableInfo[web::kContextImageURLString] = base::SysUTF8ToNSString(src); |
3583 if (!title) | 3584 if (!title) |
3584 title = base::SysUTF8ToNSString(src); | 3585 title = base::SysUTF8ToNSString(src); |
3585 if ([title hasPrefix:@"data:"]) | 3586 if ([title hasPrefix:@"data:"]) |
3586 title = @""; | 3587 title = @""; |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3863 if (!_externalRequest || !_externalRequest->window_name) | 3864 if (!_externalRequest || !_externalRequest->window_name) |
3864 return @""; | 3865 return @""; |
3865 return _externalRequest->window_name; | 3866 return _externalRequest->window_name; |
3866 } | 3867 } |
3867 | 3868 |
3868 - (void)resetExternalRequest { | 3869 - (void)resetExternalRequest { |
3869 _externalRequest.reset(); | 3870 _externalRequest.reset(); |
3870 } | 3871 } |
3871 | 3872 |
3872 @end | 3873 @end |
OLD | NEW |