Chromium Code Reviews| Index: chrome/browser/search_engines/template_url_service_android.h |
| diff --git a/chrome/browser/search_engines/template_url_service_android.h b/chrome/browser/search_engines/template_url_service_android.h |
| index af5f38c08a212727731e298448ae5df747711b74..37c3a16ab53f1be1a594c93b63d16ffc7e84e8c9 100644 |
| --- a/chrome/browser/search_engines/template_url_service_android.h |
| +++ b/chrome/browser/search_engines/template_url_service_android.h |
| @@ -27,18 +27,22 @@ class TemplateUrlServiceAndroid : public TemplateURLServiceObserver { |
| void SetUserSelectedDefaultSearchProvider( |
| JNIEnv* env, |
| const base::android::JavaParamRef<jobject>& obj, |
| - jint selected_index); |
| - jint GetDefaultSearchProvider( |
| + const base::android::JavaParamRef<jstring>& jkeyword); |
| + |
| + jint GetDefaultSearchProviderIndex( |
| JNIEnv* env, |
| - const base::android::JavaParamRef<jobject>& obj); |
| - jint GetTemplateUrlCount(JNIEnv* env, |
| - const base::android::JavaParamRef<jobject>& obj); |
| - jboolean IsLoaded(JNIEnv* env, |
| - const base::android::JavaParamRef<jobject>& obj); |
| + const base::android::JavaParamRef<jobject>& obj) const; |
| + |
| + jint GetTemplateUrlCount( |
| + JNIEnv* env, |
| + const base::android::JavaParamRef<jobject>& obj) const; |
| + jboolean IsLoaded( |
| + JNIEnv* env, |
| + const base::android::JavaParamRef<jobject>& obj) const; |
| base::android::ScopedJavaLocalRef<jobject> GetTemplateUrlAt( |
| JNIEnv* env, |
| const base::android::JavaParamRef<jobject>& obj, |
| - jint index); |
| + jint index) const; |
| jboolean IsSearchProviderManaged( |
| JNIEnv* env, |
| const base::android::JavaParamRef<jobject>& obj); |
| @@ -71,20 +75,22 @@ class TemplateUrlServiceAndroid : public TemplateURLServiceObserver { |
| base::android::ScopedJavaLocalRef<jstring> GetSearchEngineUrlFromTemplateUrl( |
| JNIEnv* env, |
| const base::android::JavaParamRef<jobject>& obj, |
| - jint index); |
| + const base::android::JavaParamRef<jstring>& jkeyword); |
| static bool Register(JNIEnv* env); |
| private: |
| ~TemplateUrlServiceAndroid() override; |
| - bool IsPrepopulatedTemplate(TemplateURL* url); |
| - |
| void OnTemplateURLServiceLoaded(); |
| // TemplateUrlServiceObserver: |
| void OnTemplateURLServiceChanged() override; |
| + // Retrieves and sorts TemplateURL list and calculates the index of the |
| + // default search provider with it. |
|
Peter Kasting
2016/11/29 03:32:18
This comment is incorrect, since the function does
ltian
2016/11/30 06:36:17
Sorry for forgetting update the comment up to date
|
| + void LoadTemplateURLs(); |
| + |
| JavaObjectWeakGlobalRef weak_java_obj_; |
| // Pointer to the TemplateUrlService for the main profile. |
| @@ -92,6 +98,10 @@ class TemplateUrlServiceAndroid : public TemplateURLServiceObserver { |
| std::unique_ptr<TemplateURLService::Subscription> template_url_subscription_; |
| + // Caches the up-to-date TemplateURL list so that calls from Android could |
| + // directly get data from it. |
| + std::vector<TemplateURL*> template_urls_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(TemplateUrlServiceAndroid); |
| }; |