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

Unified Diff: chrome/browser/search_engines/template_url_service_android.h

Issue 2367373003: [Android] Allow setting recently visited search engines as default search engine (Closed)
Patch Set: Reorganize template_url_serivce_android code. Created 4 years, 1 month 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 side-by-side diff with in-line comments
Download patch
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..ef351d661d4f3df6f464c996ebec24d655c934fe 100644
--- a/chrome/browser/search_engines/template_url_service_android.h
+++ b/chrome/browser/search_engines/template_url_service_android.h
@@ -27,18 +27,24 @@ 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);
+
+ // Updates |template_urls_| and returns the index of the default search
+ // provider
+ // within |it.
Peter Kasting 2016/11/23 21:30:27 This comment lies, since it doesn't update this va
ltian 2016/11/29 02:44:03 Sorry I forgot to update the comment. I think for
+ jint GetDefaultSearchProviderIndex(
JNIEnv* env,
- const base::android::JavaParamRef<jobject>& obj);
- jint GetTemplateUrlCount(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);
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 +77,20 @@ 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;
+ void LoadTemplateURLs();
Peter Kasting 2016/11/23 21:30:27 Nit: Add comments about what this does.
ltian 2016/11/29 02:44:03 Done.
+
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_;
+ std::vector<TemplateURL*> template_urls_;
Peter Kasting 2016/11/23 21:30:27 Nit: Add comments about why we need to cache this.
ltian 2016/11/29 02:44:03 Done.
+
+ size_t default_search_provider_index_;
+
DISALLOW_COPY_AND_ASSIGN(TemplateUrlServiceAndroid);
};

Powered by Google App Engine
This is Rietveld 408576698