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 <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include "base/android/jni_string.h" | 9 #include "base/android/jni_string.h" |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 TemplateUrlServiceAndroid::GetPrepopulatedTemplateUrlAt( | 126 TemplateUrlServiceAndroid::GetPrepopulatedTemplateUrlAt( |
127 JNIEnv* env, | 127 JNIEnv* env, |
128 const JavaParamRef<jobject>& obj, | 128 const JavaParamRef<jobject>& obj, |
129 jint index) { | 129 jint index) { |
130 TemplateURL* template_url = template_url_service_->GetTemplateURLs()[index]; | 130 TemplateURL* template_url = template_url_service_->GetTemplateURLs()[index]; |
131 if (!IsPrepopulatedTemplate(template_url) && | 131 if (!IsPrepopulatedTemplate(template_url) && |
132 !template_url->created_by_policy()) | 132 !template_url->created_by_policy()) |
133 return ScopedJavaLocalRef<jobject>(); | 133 return ScopedJavaLocalRef<jobject>(); |
134 | 134 |
135 return Java_TemplateUrl_create( | 135 return Java_TemplateUrl_create( |
136 env, | 136 env, index, |
137 index, | 137 base::android::ConvertUTF16ToJavaString(env, template_url->short_name())); |
138 base::android::ConvertUTF16ToJavaString( | |
139 env, template_url->short_name()).obj()); | |
140 } | 138 } |
141 | 139 |
142 bool TemplateUrlServiceAndroid::IsPrepopulatedTemplate(TemplateURL* url) { | 140 bool TemplateUrlServiceAndroid::IsPrepopulatedTemplate(TemplateURL* url) { |
143 return url->prepopulate_id() > 0; | 141 return url->prepopulate_id() > 0; |
144 } | 142 } |
145 | 143 |
146 void TemplateUrlServiceAndroid::OnTemplateURLServiceLoaded() { | 144 void TemplateUrlServiceAndroid::OnTemplateURLServiceLoaded() { |
147 template_url_subscription_.reset(); | 145 template_url_subscription_.reset(); |
148 JNIEnv* env = base::android::AttachCurrentThread(); | 146 JNIEnv* env = base::android::AttachCurrentThread(); |
149 if (weak_java_obj_.get(env).is_null()) | 147 if (weak_java_obj_.get(env).is_null()) |
150 return; | 148 return; |
151 | 149 |
152 Java_TemplateUrlService_templateUrlServiceLoaded( | 150 Java_TemplateUrlService_templateUrlServiceLoaded(env, |
153 env, weak_java_obj_.get(env).obj()); | 151 weak_java_obj_.get(env)); |
154 } | 152 } |
155 | 153 |
156 void TemplateUrlServiceAndroid::OnTemplateURLServiceChanged() { | 154 void TemplateUrlServiceAndroid::OnTemplateURLServiceChanged() { |
157 JNIEnv* env = base::android::AttachCurrentThread(); | 155 JNIEnv* env = base::android::AttachCurrentThread(); |
158 if (weak_java_obj_.get(env).is_null()) | 156 if (weak_java_obj_.get(env).is_null()) |
159 return; | 157 return; |
160 | 158 |
161 Java_TemplateUrlService_onTemplateURLServiceChanged( | 159 Java_TemplateUrlService_onTemplateURLServiceChanged(env, |
162 env, weak_java_obj_.get(env).obj()); | 160 weak_java_obj_.get(env)); |
163 } | 161 } |
164 | 162 |
165 base::android::ScopedJavaLocalRef<jstring> | 163 base::android::ScopedJavaLocalRef<jstring> |
166 TemplateUrlServiceAndroid::GetUrlForSearchQuery( | 164 TemplateUrlServiceAndroid::GetUrlForSearchQuery( |
167 JNIEnv* env, | 165 JNIEnv* env, |
168 const JavaParamRef<jobject>& obj, | 166 const JavaParamRef<jobject>& obj, |
169 const JavaParamRef<jstring>& jquery) { | 167 const JavaParamRef<jstring>& jquery) { |
170 const TemplateURL* default_provider = | 168 const TemplateURL* default_provider = |
171 template_url_service_->GetDefaultSearchProvider(); | 169 template_url_service_->GetDefaultSearchProvider(); |
172 | 170 |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
278 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& obj) { | 276 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& obj) { |
279 TemplateUrlServiceAndroid* template_url_service_android = | 277 TemplateUrlServiceAndroid* template_url_service_android = |
280 new TemplateUrlServiceAndroid(env, obj); | 278 new TemplateUrlServiceAndroid(env, obj); |
281 return reinterpret_cast<intptr_t>(template_url_service_android); | 279 return reinterpret_cast<intptr_t>(template_url_service_android); |
282 } | 280 } |
283 | 281 |
284 // static | 282 // static |
285 bool TemplateUrlServiceAndroid::Register(JNIEnv* env) { | 283 bool TemplateUrlServiceAndroid::Register(JNIEnv* env) { |
286 return RegisterNativesImpl(env); | 284 return RegisterNativesImpl(env); |
287 } | 285 } |
OLD | NEW |