| 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" | |
| 32 #import "ios/net/nsurlrequest_util.h" | 31 #import "ios/net/nsurlrequest_util.h" |
| 33 #include "ios/public/provider/web/web_ui_ios.h" | 32 #include "ios/public/provider/web/web_ui_ios.h" |
| 34 #import "ios/web/history_state_util.h" | 33 #import "ios/web/history_state_util.h" |
| 35 #include "ios/web/interstitials/web_interstitial_impl.h" | 34 #include "ios/web/interstitials/web_interstitial_impl.h" |
| 36 #import "ios/web/navigation/crw_session_certificate_policy_manager.h" | 35 #import "ios/web/navigation/crw_session_certificate_policy_manager.h" |
| 37 #import "ios/web/navigation/crw_session_controller.h" | 36 #import "ios/web/navigation/crw_session_controller.h" |
| 38 #import "ios/web/navigation/crw_session_entry.h" | 37 #import "ios/web/navigation/crw_session_entry.h" |
| 39 #import "ios/web/navigation/navigation_item_impl.h" | 38 #import "ios/web/navigation/navigation_item_impl.h" |
| 40 #import "ios/web/navigation/navigation_manager_impl.h" | 39 #import "ios/web/navigation/navigation_manager_impl.h" |
| 41 #import "ios/web/navigation/web_load_params.h" | 40 #import "ios/web/navigation/web_load_params.h" |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 73 #import "ios/web/web_state/ui/crw_swipe_recognizer_provider.h" | 72 #import "ios/web/web_state/ui/crw_swipe_recognizer_provider.h" |
| 74 #import "ios/web/web_state/ui/crw_ui_web_view_web_controller.h" | 73 #import "ios/web/web_state/ui/crw_ui_web_view_web_controller.h" |
| 75 #import "ios/web/web_state/ui/crw_web_controller+protected.h" | 74 #import "ios/web/web_state/ui/crw_web_controller+protected.h" |
| 76 #import "ios/web/web_state/ui/crw_web_controller_container_view.h" | 75 #import "ios/web/web_state/ui/crw_web_controller_container_view.h" |
| 77 #import "ios/web/web_state/ui/crw_wk_web_view_web_controller.h" | 76 #import "ios/web/web_state/ui/crw_wk_web_view_web_controller.h" |
| 78 #import "ios/web/web_state/web_controller_observer_bridge.h" | 77 #import "ios/web/web_state/web_controller_observer_bridge.h" |
| 79 #include "ios/web/web_state/web_state_facade_delegate.h" | 78 #include "ios/web/web_state/web_state_facade_delegate.h" |
| 80 #import "ios/web/web_state/web_state_impl.h" | 79 #import "ios/web/web_state/web_state_impl.h" |
| 81 #import "net/base/mac/url_conversions.h" | 80 #import "net/base/mac/url_conversions.h" |
| 82 #include "net/base/net_errors.h" | 81 #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 = | 3576 base::string16 urlText = net::FormatUrl(GURL(href), acceptLangs); |
| 3577 url_formatter::FormatUrl(GURL(href), acceptLangs); | |
| 3578 title = base::SysUTF16ToNSString(urlText); | 3577 title = base::SysUTF16ToNSString(urlText); |
| 3579 } | 3578 } |
| 3580 } | 3579 } |
| 3581 std::string src; | 3580 std::string src; |
| 3582 if (element->GetString("src", &src)) { | 3581 if (element->GetString("src", &src)) { |
| 3583 mutableInfo[web::kContextImageURLString] = base::SysUTF8ToNSString(src); | 3582 mutableInfo[web::kContextImageURLString] = base::SysUTF8ToNSString(src); |
| 3584 if (!title) | 3583 if (!title) |
| 3585 title = base::SysUTF8ToNSString(src); | 3584 title = base::SysUTF8ToNSString(src); |
| 3586 if ([title hasPrefix:@"data:"]) | 3585 if ([title hasPrefix:@"data:"]) |
| 3587 title = @""; | 3586 title = @""; |
| (...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3864 if (!_externalRequest || !_externalRequest->window_name) | 3863 if (!_externalRequest || !_externalRequest->window_name) |
| 3865 return @""; | 3864 return @""; |
| 3866 return _externalRequest->window_name; | 3865 return _externalRequest->window_name; |
| 3867 } | 3866 } |
| 3868 | 3867 |
| 3869 - (void)resetExternalRequest { | 3868 - (void)resetExternalRequest { |
| 3870 _externalRequest.reset(); | 3869 _externalRequest.reset(); |
| 3871 } | 3870 } |
| 3872 | 3871 |
| 3873 @end | 3872 @end |
| OLD | NEW |