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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/locale/LocaleManager.java

Issue 2930063002: Ensure TemplateUrlService is loaded in SearchActivity. (Closed)
Patch Set: Rebase Created 3 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/locale/LocaleManager.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/locale/LocaleManager.java b/chrome/android/java/src/org/chromium/chrome/browser/locale/LocaleManager.java
index fed5e2d3f0399d902d92effd4ba81b6ab363750c..c86752830356adaf8c29bd697f8743a64296aba5 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/locale/LocaleManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/locale/LocaleManager.java
@@ -263,28 +263,20 @@ public class LocaleManager {
assert LibraryLoader.isInitialized();
// Load up the search engines.
- final TemplateUrlService instance = TemplateUrlService.getInstance();
- if (!instance.isLoaded()) {
- instance.registerLoadListener(new TemplateUrlService.LoadListener() {
- @Override
- public void onTemplateUrlServiceLoaded() {
- instance.unregisterLoadListener(this);
-
- // If the activity has been destroyed by the time the TemplateUrlService has
- // loaded, then do not attempt to show the dialog.
- if (ApplicationStatus.getStateForActivity(activity)
- == ActivityState.DESTROYED) {
- if (onDismissed != null) onDismissed.onResult(false);
- return;
- }
-
- showPromoDialog(dialogCreator);
+ Runnable showDialogAction = new Runnable() {
+ @Override
+ public void run() {
+ // If the activity has been destroyed by the time the TemplateUrlService has
+ // loaded, then do not attempt to show the dialog.
+ if (ApplicationStatus.getStateForActivity(activity) == ActivityState.DESTROYED) {
+ if (onDismissed != null) onDismissed.onResult(false);
+ return;
}
- });
- instance.load();
- } else {
- showPromoDialog(dialogCreator);
- }
+
+ showPromoDialog(dialogCreator);
+ }
+ };
+ TemplateUrlService.getInstance().runWhenLoaded(showDialogAction);
}
private void showPromoDialog(Callable<PromoDialog> dialogCreator) {

Powered by Google App Engine
This is Rietveld 408576698