Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(214)

Side by Side Diff: chrome/browser/android/locale/special_locale_handler.cc

Issue 2816383002: Remove non-const version of GetDefaultSearchProvider() and make all callers call the const version (Closed)
Patch Set: Fix instant extended interactive ui test for calling the const version of GetDefaultSearchProvider() Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2016 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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/android/locale/special_locale_handler.h" 5 #include "chrome/browser/android/locale/special_locale_handler.h"
6 6
7 #include "base/android/jni_android.h" 7 #include "base/android/jni_android.h"
8 #include "base/android/jni_string.h" 8 #include "base/android/jni_string.h"
9 #include "base/android/jni_weak_ref.h" 9 #include "base/android/jni_weak_ref.h"
10 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 const JavaParamRef<jobject>& obj) { 58 const JavaParamRef<jobject>& obj) {
59 DCHECK(locale_.length() == 2); 59 DCHECK(locale_.length() == 2);
60 60
61 std::vector<std::unique_ptr<TemplateURLData>> prepopulated_list = 61 std::vector<std::unique_ptr<TemplateURLData>> prepopulated_list =
62 GetLocalPrepopulatedEngines(profile_); 62 GetLocalPrepopulatedEngines(profile_);
63 63
64 if (prepopulated_list.empty()) 64 if (prepopulated_list.empty())
65 return false; 65 return false;
66 66
67 for (const auto& data_url : prepopulated_list) { 67 for (const auto& data_url : prepopulated_list) {
68 TemplateURL* existing = template_url_service_->GetTemplateURLForKeyword( 68 const TemplateURL* existing =
69 data_url.get()->keyword()); 69 template_url_service_->GetTemplateURLForKeyword(
70 data_url.get()->keyword());
70 // Do not add local engines if there is already one. 71 // Do not add local engines if there is already one.
71 if (existing) 72 if (existing)
72 continue; 73 continue;
73 74
74 data_url.get()->safe_for_autoreplace = true; 75 data_url.get()->safe_for_autoreplace = true;
75 std::unique_ptr<TemplateURL> turl( 76 std::unique_ptr<TemplateURL> turl(
76 new TemplateURL(*data_url, TemplateURL::LOCAL)); 77 new TemplateURL(*data_url, TemplateURL::LOCAL));
77 TemplateURL* added_turl = template_url_service_->Add(std::move(turl)); 78 TemplateURL* added_turl = template_url_service_->Add(std::move(turl));
78 if (added_turl) { 79 if (added_turl) {
79 prepopulate_ids_.push_back(added_turl->prepopulate_id()); 80 prepopulate_ids_.push_back(added_turl->prepopulate_id());
(...skipping 12 matching lines...) Expand all
92 template_url_service_->Remove(turl); 93 template_url_service_->Remove(turl);
93 } 94 }
94 prepopulate_ids_.pop_back(); 95 prepopulate_ids_.pop_back();
95 } 96 }
96 } 97 }
97 98
98 void SpecialLocaleHandler::OverrideDefaultSearchProvider( 99 void SpecialLocaleHandler::OverrideDefaultSearchProvider(
99 JNIEnv* env, 100 JNIEnv* env,
100 const JavaParamRef<jobject>& obj) { 101 const JavaParamRef<jobject>& obj) {
101 // If the user has changed their default search provider, no-op. 102 // If the user has changed their default search provider, no-op.
102 TemplateURL* current_dsp = template_url_service_->GetDefaultSearchProvider(); 103 const TemplateURL* current_dsp =
104 template_url_service_->GetDefaultSearchProvider();
103 if (!current_dsp || 105 if (!current_dsp ||
104 current_dsp->prepopulate_id() != TemplateURLPrepopulateData::google.id) { 106 current_dsp->prepopulate_id() != TemplateURLPrepopulateData::google.id) {
105 return; 107 return;
106 } 108 }
107 109
108 TemplateURL* turl = FindURLByPrepopulateID( 110 TemplateURL* turl = FindURLByPrepopulateID(
109 template_url_service_->GetTemplateURLs(), GetDesignatedSearchEngine()); 111 template_url_service_->GetTemplateURLs(), GetDesignatedSearchEngine());
110 if (turl) { 112 if (turl) {
111 template_url_service_->SetUserSelectedDefaultSearchProvider(turl); 113 template_url_service_->SetUserSelectedDefaultSearchProvider(turl);
112 } 114 }
113 } 115 }
114 116
115 void SpecialLocaleHandler::SetGoogleAsDefaultSearch( 117 void SpecialLocaleHandler::SetGoogleAsDefaultSearch(
116 JNIEnv* env, 118 JNIEnv* env,
117 const JavaParamRef<jobject>& obj) { 119 const JavaParamRef<jobject>& obj) {
118 // If the user has changed their default search provider, no-op. 120 // If the user has changed their default search provider, no-op.
119 TemplateURL* current_dsp = template_url_service_->GetDefaultSearchProvider(); 121 const TemplateURL* current_dsp =
122 template_url_service_->GetDefaultSearchProvider();
120 if (!current_dsp || 123 if (!current_dsp ||
121 current_dsp->prepopulate_id() != GetDesignatedSearchEngine()) { 124 current_dsp->prepopulate_id() != GetDesignatedSearchEngine()) {
122 return; 125 return;
123 } 126 }
124 127
125 TemplateURL* turl = 128 TemplateURL* turl =
126 FindURLByPrepopulateID(template_url_service_->GetTemplateURLs(), 129 FindURLByPrepopulateID(template_url_service_->GetTemplateURLs(),
127 TemplateURLPrepopulateData::google.id); 130 TemplateURLPrepopulateData::google.id);
128 if (turl) { 131 if (turl) {
129 template_url_service_->SetUserSelectedDefaultSearchProvider(turl); 132 template_url_service_->SetUserSelectedDefaultSearchProvider(turl);
130 } 133 }
131 } 134 }
132 135
133 std::vector<std::unique_ptr<TemplateURLData>> 136 std::vector<std::unique_ptr<TemplateURLData>>
134 SpecialLocaleHandler::GetLocalPrepopulatedEngines(Profile* profile) { 137 SpecialLocaleHandler::GetLocalPrepopulatedEngines(Profile* profile) {
135 return TemplateURLPrepopulateData::GetLocalPrepopulatedEngines( 138 return TemplateURLPrepopulateData::GetLocalPrepopulatedEngines(
136 locale_, profile_->GetPrefs()); 139 locale_, profile_->GetPrefs());
137 } 140 }
138 141
139 int SpecialLocaleHandler::GetDesignatedSearchEngine() { 142 int SpecialLocaleHandler::GetDesignatedSearchEngine() {
140 return TemplateURLPrepopulateData::sogou.id; 143 return TemplateURLPrepopulateData::sogou.id;
141 } 144 }
142 145
143 SpecialLocaleHandler::~SpecialLocaleHandler() {} 146 SpecialLocaleHandler::~SpecialLocaleHandler() {}
144 147
145 // static 148 // static
146 bool RegisterSpecialLocaleHandler(JNIEnv* env) { 149 bool RegisterSpecialLocaleHandler(JNIEnv* env) {
147 return RegisterNativesImpl(env); 150 return RegisterNativesImpl(env);
148 } 151 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698