• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "chrome/browser/ui/search/search_ipc_router_policy_impl.h"
6 
7 #include "chrome/browser/profiles/profile.h"
8 #include "chrome/browser/search/search.h"
9 #include "content/public/browser/web_contents.h"
10 
SearchIPCRouterPolicyImpl(const content::WebContents * web_contents)11 SearchIPCRouterPolicyImpl::SearchIPCRouterPolicyImpl(
12     const content::WebContents* web_contents)
13     : web_contents_(web_contents),
14       is_incognito_(true) {
15   DCHECK(web_contents);
16 
17   Profile* profile =
18       Profile::FromBrowserContext(web_contents_->GetBrowserContext());
19   if (profile)
20     is_incognito_ = profile->IsOffTheRecord();
21 }
22 
~SearchIPCRouterPolicyImpl()23 SearchIPCRouterPolicyImpl::~SearchIPCRouterPolicyImpl() {}
24 
ShouldProcessSetVoiceSearchSupport()25 bool SearchIPCRouterPolicyImpl::ShouldProcessSetVoiceSearchSupport() {
26   return true;
27 }
28 
ShouldProcessFocusOmnibox(bool is_active_tab)29 bool SearchIPCRouterPolicyImpl::ShouldProcessFocusOmnibox(bool is_active_tab) {
30   return is_active_tab && !is_incognito_ && chrome::IsInstantNTP(web_contents_);
31 }
32 
ShouldProcessNavigateToURL(bool is_active_tab)33 bool SearchIPCRouterPolicyImpl::ShouldProcessNavigateToURL(bool is_active_tab) {
34   return is_active_tab && !is_incognito_;
35 }
36 
ShouldProcessDeleteMostVisitedItem()37 bool SearchIPCRouterPolicyImpl::ShouldProcessDeleteMostVisitedItem() {
38   return !is_incognito_ && chrome::IsInstantNTP(web_contents_);
39 }
40 
ShouldProcessUndoMostVisitedDeletion()41 bool SearchIPCRouterPolicyImpl::ShouldProcessUndoMostVisitedDeletion() {
42   return !is_incognito_ && chrome::IsInstantNTP(web_contents_);
43 }
44 
ShouldProcessUndoAllMostVisitedDeletions()45 bool SearchIPCRouterPolicyImpl::ShouldProcessUndoAllMostVisitedDeletions() {
46   return !is_incognito_ && chrome::IsInstantNTP(web_contents_);
47 }
48 
ShouldProcessLogEvent()49 bool SearchIPCRouterPolicyImpl::ShouldProcessLogEvent() {
50   return !is_incognito_ && chrome::IsInstantNTP(web_contents_);
51 }
52 
ShouldProcessPasteIntoOmnibox(bool is_active_tab)53 bool SearchIPCRouterPolicyImpl::ShouldProcessPasteIntoOmnibox(
54     bool is_active_tab) {
55   return is_active_tab && !is_incognito_ && chrome::IsInstantNTP(web_contents_);
56 }
57 
ShouldProcessChromeIdentityCheck()58 bool SearchIPCRouterPolicyImpl::ShouldProcessChromeIdentityCheck() {
59   return !is_incognito_ && chrome::IsInstantNTP(web_contents_);
60 }
61 
ShouldSendSetPromoInformation()62 bool SearchIPCRouterPolicyImpl::ShouldSendSetPromoInformation() {
63   return !is_incognito_ && chrome::IsInstantNTP(web_contents_);
64 }
65 
ShouldSendSetDisplayInstantResults()66 bool SearchIPCRouterPolicyImpl::ShouldSendSetDisplayInstantResults() {
67   return !is_incognito_;
68 }
69 
ShouldSendSetSuggestionToPrefetch()70 bool SearchIPCRouterPolicyImpl::ShouldSendSetSuggestionToPrefetch() {
71   return !is_incognito_;
72 }
73 
ShouldSendMostVisitedItems()74 bool SearchIPCRouterPolicyImpl::ShouldSendMostVisitedItems() {
75   return !is_incognito_ && chrome::IsInstantNTP(web_contents_);
76 }
77 
ShouldSendThemeBackgroundInfo()78 bool SearchIPCRouterPolicyImpl::ShouldSendThemeBackgroundInfo() {
79   return !is_incognito_ && chrome::IsInstantNTP(web_contents_);
80 }
81 
ShouldSendToggleVoiceSearch()82 bool SearchIPCRouterPolicyImpl::ShouldSendToggleVoiceSearch() {
83   return true;
84 }
85 
ShouldSubmitQuery()86 bool SearchIPCRouterPolicyImpl::ShouldSubmitQuery() {
87   return true;
88 }
89