| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/search_engines/template_url_service_android.h" | 5 #include "chrome/browser/search_engines/template_url_service_android.h" |
| 6 | 6 |
| 7 #include "base/android/jni_string.h" | 7 #include "base/android/jni_string.h" |
| 8 #include "base/bind.h" | 8 #include "base/bind.h" |
| 9 #include "base/format_macros.h" | 9 #include "base/format_macros.h" |
| 10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 44 base::Unretained(this))); | 44 base::Unretained(this))); |
| 45 } | 45 } |
| 46 | 46 |
| 47 TemplateUrlServiceAndroid::~TemplateUrlServiceAndroid() { | 47 TemplateUrlServiceAndroid::~TemplateUrlServiceAndroid() { |
| 48 } | 48 } |
| 49 | 49 |
| 50 void TemplateUrlServiceAndroid::Load(JNIEnv* env, jobject obj) { | 50 void TemplateUrlServiceAndroid::Load(JNIEnv* env, jobject obj) { |
| 51 template_url_service_->Load(); | 51 template_url_service_->Load(); |
| 52 } | 52 } |
| 53 | 53 |
| 54 void TemplateUrlServiceAndroid::SetDefaultSearchProvider(JNIEnv* env, | 54 void TemplateUrlServiceAndroid::SetUserSelectedDefaultSearchProvider( |
| 55 jobject obj, | 55 JNIEnv* env, |
| 56 jint selected_index) { | 56 jobject obj, |
| 57 jint selected_index) { |
| 57 std::vector<TemplateURL*> template_urls = | 58 std::vector<TemplateURL*> template_urls = |
| 58 template_url_service_->GetTemplateURLs(); | 59 template_url_service_->GetTemplateURLs(); |
| 59 size_t selected_index_size_t = static_cast<size_t>(selected_index); | 60 size_t selected_index_size_t = static_cast<size_t>(selected_index); |
| 60 DCHECK_LT(selected_index_size_t, template_urls.size()) << | 61 DCHECK_LT(selected_index_size_t, template_urls.size()) << |
| 61 "Wrong index for search engine"; | 62 "Wrong index for search engine"; |
| 62 | 63 |
| 63 TemplateURL* template_url = template_urls[selected_index_size_t]; | 64 TemplateURL* template_url = template_urls[selected_index_size_t]; |
| 64 DCHECK_GT(template_url->prepopulate_id(), 0) << | 65 DCHECK_GT(template_url->prepopulate_id(), 0) << |
| 65 "Tried to select non-prepopulated search engine"; | 66 "Tried to select non-prepopulated search engine"; |
| 66 template_url_service_->SetDefaultSearchProvider(template_url); | 67 template_url_service_->SetUserSelectedDefaultSearchProvider(template_url); |
| 67 } | 68 } |
| 68 | 69 |
| 69 jint TemplateUrlServiceAndroid::GetDefaultSearchProvider(JNIEnv* env, | 70 jint TemplateUrlServiceAndroid::GetDefaultSearchProvider(JNIEnv* env, |
| 70 jobject obj) { | 71 jobject obj) { |
| 71 std::vector<TemplateURL*> template_urls = | 72 std::vector<TemplateURL*> template_urls = |
| 72 template_url_service_->GetTemplateURLs(); | 73 template_url_service_->GetTemplateURLs(); |
| 73 TemplateURL* default_search_provider = | 74 TemplateURL* default_search_provider = |
| 74 template_url_service_->GetDefaultSearchProvider(); | 75 template_url_service_->GetDefaultSearchProvider(); |
| 75 for (size_t i = 0; i < template_urls.size(); ++i) { | 76 for (size_t i = 0; i < template_urls.size(); ++i) { |
| 76 if (default_search_provider == template_urls[i]) | 77 if (default_search_provider == template_urls[i]) |
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 198 static jlong Init(JNIEnv* env, jobject obj) { | 199 static jlong Init(JNIEnv* env, jobject obj) { |
| 199 TemplateUrlServiceAndroid* template_url_service_android = | 200 TemplateUrlServiceAndroid* template_url_service_android = |
| 200 new TemplateUrlServiceAndroid(env, obj); | 201 new TemplateUrlServiceAndroid(env, obj); |
| 201 return reinterpret_cast<intptr_t>(template_url_service_android); | 202 return reinterpret_cast<intptr_t>(template_url_service_android); |
| 202 } | 203 } |
| 203 | 204 |
| 204 // static | 205 // static |
| 205 bool TemplateUrlServiceAndroid::Register(JNIEnv* env) { | 206 bool TemplateUrlServiceAndroid::Register(JNIEnv* env) { |
| 206 return RegisterNativesImpl(env); | 207 return RegisterNativesImpl(env); |
| 207 } | 208 } |
| OLD | NEW |