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 #include "chrome/browser/page_load_metrics/observers/google_captcha_observer.h" | 5 #include "chrome/browser/page_load_metrics/observers/google_captcha_observer.h" |
6 | 6 |
7 #include "base/metrics/histogram_macros.h" | 7 #include "base/metrics/histogram_macros.h" |
8 #include "base/strings/string_util.h" | 8 #include "base/strings/string_util.h" |
9 #include "chrome/browser/page_load_metrics/page_load_metrics_util.h" | 9 #include "chrome/browser/page_load_metrics/page_load_metrics_util.h" |
10 #include "chrome/common/page_load_metrics/page_load_timing.h" | 10 #include "chrome/common/page_load_metrics/page_load_timing.h" |
(...skipping 26 matching lines...) Expand all Loading... |
37 return (base::StartsWith(url.host_piece(), "ipv4.google.", | 37 return (base::StartsWith(url.host_piece(), "ipv4.google.", |
38 base::CompareCase::SENSITIVE) | 38 base::CompareCase::SENSITIVE) |
39 || base::StartsWith(url.host_piece(), "ipv6.google.", | 39 || base::StartsWith(url.host_piece(), "ipv6.google.", |
40 base::CompareCase::SENSITIVE)) | 40 base::CompareCase::SENSITIVE)) |
41 && base::StartsWith(url.path_piece(), "/sorry", | 41 && base::StartsWith(url.path_piece(), "/sorry", |
42 base::CompareCase::SENSITIVE); | 42 base::CompareCase::SENSITIVE); |
43 } | 43 } |
44 | 44 |
45 GoogleCaptchaObserver::GoogleCaptchaObserver() : saw_solution_(false) {} | 45 GoogleCaptchaObserver::GoogleCaptchaObserver() : saw_solution_(false) {} |
46 | 46 |
47 void GoogleCaptchaObserver::OnCommit( | 47 page_load_metrics::PageLoadMetricsObserver::ObservePolicy |
48 content::NavigationHandle* navigation_handle) { | 48 GoogleCaptchaObserver::OnCommit(content::NavigationHandle* navigation_handle) { |
49 if (!navigation_handle->IsSamePage() | 49 if (!navigation_handle->IsSamePage() |
50 && IsGoogleCaptcha(navigation_handle->GetURL())) { | 50 && IsGoogleCaptcha(navigation_handle->GetURL())) { |
51 RecordGoogleCaptchaEvent(GOOGLE_CAPTCHA_SHOWN); | 51 RecordGoogleCaptchaEvent(GOOGLE_CAPTCHA_SHOWN); |
52 } | 52 } |
| 53 return CONTINUE_OBSERVING; |
53 } | 54 } |
54 | 55 |
55 void GoogleCaptchaObserver::OnRedirect( | 56 void GoogleCaptchaObserver::OnRedirect( |
56 content::NavigationHandle* navigation_handle) { | 57 content::NavigationHandle* navigation_handle) { |
57 if (IsGoogleCaptcha(navigation_handle->GetReferrer().url) && !saw_solution_) { | 58 if (IsGoogleCaptcha(navigation_handle->GetReferrer().url) && !saw_solution_) { |
58 RecordGoogleCaptchaEvent(GOOGLE_CAPTCHA_SOLVED); | 59 RecordGoogleCaptchaEvent(GOOGLE_CAPTCHA_SOLVED); |
59 saw_solution_ = true; | 60 saw_solution_ = true; |
60 } | 61 } |
61 } | 62 } |
62 | 63 |
63 } // namespace google_captcha_observer | 64 } // namespace google_captcha_observer |
OLD | NEW |