OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/metrics/desktop_engagement/desktop_engagement_observer.
h" | 5 #include "chrome/browser/metrics/desktop_session/desktop_session_observer.h" |
6 | 6 |
7 #include "chrome/browser/metrics/desktop_engagement/desktop_engagement_service.h
" | 7 #include "chrome/browser/metrics/desktop_session/desktop_session_service.h" |
8 #include "content/public/browser/render_view_host.h" | 8 #include "content/public/browser/render_view_host.h" |
9 | 9 |
10 DEFINE_WEB_CONTENTS_USER_DATA_KEY(metrics::DesktopEngagementObserver); | 10 DEFINE_WEB_CONTENTS_USER_DATA_KEY(metrics::DesktopSessionObserver); |
11 | 11 |
12 namespace metrics { | 12 namespace metrics { |
13 | 13 |
14 DesktopEngagementObserver::DesktopEngagementObserver( | 14 DesktopSessionObserver::DesktopSessionObserver( |
15 content::WebContents* web_contents, | 15 content::WebContents* web_contents, |
16 DesktopEngagementService* service) | 16 DesktopSessionService* service) |
17 : content::WebContentsObserver(web_contents), service_(service) { | 17 : content::WebContentsObserver(web_contents), service_(service) { |
18 RegisterInputEventObserver(web_contents->GetRenderViewHost()); | 18 RegisterInputEventObserver(web_contents->GetRenderViewHost()); |
19 } | 19 } |
20 | 20 |
21 DesktopEngagementObserver::~DesktopEngagementObserver() {} | 21 DesktopSessionObserver::~DesktopSessionObserver() {} |
22 | 22 |
23 // static | 23 // static |
24 DesktopEngagementObserver* DesktopEngagementObserver::CreateForWebContents( | 24 DesktopSessionObserver* DesktopSessionObserver::CreateForWebContents( |
25 content::WebContents* web_contents) { | 25 content::WebContents* web_contents) { |
26 DCHECK(web_contents); | 26 DCHECK(web_contents); |
27 | 27 |
28 if (!DesktopEngagementService::IsInitialized()) | 28 if (!DesktopSessionService::IsInitialized()) |
29 return nullptr; | 29 return nullptr; |
30 | 30 |
31 DesktopEngagementObserver* observer = FromWebContents(web_contents); | 31 DesktopSessionObserver* observer = FromWebContents(web_contents); |
32 if (!observer) { | 32 if (!observer) { |
33 observer = new DesktopEngagementObserver(web_contents, | 33 observer = |
34 DesktopEngagementService::Get()); | 34 new DesktopSessionObserver(web_contents, DesktopSessionService::Get()); |
35 web_contents->SetUserData(UserDataKey(), observer); | 35 web_contents->SetUserData(UserDataKey(), observer); |
36 } | 36 } |
37 return observer; | 37 return observer; |
38 } | 38 } |
39 | 39 |
40 void DesktopEngagementObserver::RegisterInputEventObserver( | 40 void DesktopSessionObserver::RegisterInputEventObserver( |
41 content::RenderViewHost* host) { | 41 content::RenderViewHost* host) { |
42 if (host != nullptr) | 42 if (host != nullptr) |
43 host->GetWidget()->AddInputEventObserver(this); | 43 host->GetWidget()->AddInputEventObserver(this); |
44 } | 44 } |
45 | 45 |
46 void DesktopEngagementObserver::UnregisterInputEventObserver( | 46 void DesktopSessionObserver::UnregisterInputEventObserver( |
47 content::RenderViewHost* host) { | 47 content::RenderViewHost* host) { |
48 if (host != nullptr) | 48 if (host != nullptr) |
49 host->GetWidget()->RemoveInputEventObserver(this); | 49 host->GetWidget()->RemoveInputEventObserver(this); |
50 } | 50 } |
51 | 51 |
52 void DesktopEngagementObserver::OnInputEvent( | 52 void DesktopSessionObserver::OnInputEvent(const blink::WebInputEvent& event) { |
53 const blink::WebInputEvent& event) { | |
54 service_->OnUserEvent(); | 53 service_->OnUserEvent(); |
55 } | 54 } |
56 | 55 |
57 void DesktopEngagementObserver::RenderViewHostChanged( | 56 void DesktopSessionObserver::RenderViewHostChanged( |
58 content::RenderViewHost* old_host, | 57 content::RenderViewHost* old_host, |
59 content::RenderViewHost* new_host) { | 58 content::RenderViewHost* new_host) { |
60 UnregisterInputEventObserver(old_host); | 59 UnregisterInputEventObserver(old_host); |
61 RegisterInputEventObserver(new_host); | 60 RegisterInputEventObserver(new_host); |
62 } | 61 } |
63 | 62 |
64 } // namespace metrics | 63 } // namespace metrics |
OLD | NEW |