| Index: chrome/android/java/src/org/chromium/chrome/browser/locale/DefaultSearchEngineDialogHelper.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/locale/DefaultSearchEngineDialogHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/locale/DefaultSearchEngineDialogHelper.java
|
| index 31c69f09aacfd594db0d6703ea38f424c9ff8307..fe0aab8df5b3b3f7b2d24f1e97666ec30b0de7e0 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/locale/DefaultSearchEngineDialogHelper.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/locale/DefaultSearchEngineDialogHelper.java
|
| @@ -39,9 +39,9 @@ public class DefaultSearchEngineDialogHelper implements OnCheckedChangeListener,
|
| }
|
|
|
| /** Called when the search engine the user selected is confirmed to be the one they want. */
|
| - protected void onUserSeachEngineChoice(String keyword) {
|
| + protected void onUserSeachEngineChoice(List<String> keywords, String keyword) {
|
| LocaleManager.getInstance().onUserSearchEngineChoiceFromPromoDialog(
|
| - mDialogType, keyword);
|
| + mDialogType, keywords, keyword);
|
| }
|
| }
|
|
|
| @@ -50,6 +50,11 @@ public class DefaultSearchEngineDialogHelper implements OnCheckedChangeListener,
|
| private final Button mConfirmButton;
|
|
|
| /**
|
| + * List of search engine keywords in the order shown to the user.
|
| + */
|
| + private final List<String> mSearchEngineKeywords;
|
| +
|
| + /**
|
| * Keyword for the search engine that is selected in the RadioButtonLayout.
|
| * This value is not locked into the TemplateUrlService until the user confirms it by clicking
|
| * on {@link #mConfirmButton}.
|
| @@ -74,16 +79,16 @@ public class DefaultSearchEngineDialogHelper implements OnCheckedChangeListener,
|
| // Shuffle up the engines.
|
| List<TemplateUrl> engines = mDelegate.getSearchEngines();
|
| List<CharSequence> engineNames = new ArrayList<>();
|
| - List<String> engineKeywords = new ArrayList<>();
|
| + mSearchEngineKeywords = new ArrayList<>();
|
| Collections.shuffle(engines);
|
| for (int i = 0; i < engines.size(); i++) {
|
| TemplateUrl engine = engines.get(i);
|
| engineNames.add(engine.getShortName());
|
| - engineKeywords.add(engine.getKeyword());
|
| + mSearchEngineKeywords.add(engine.getKeyword());
|
| }
|
|
|
| // Add the search engines to the dialog without any of them being selected by default.
|
| - controls.addOptions(engineNames, engineKeywords);
|
| + controls.addOptions(engineNames, mSearchEngineKeywords);
|
| controls.selectChildAtIndex(RadioButtonLayout.INVALID_INDEX);
|
| controls.setOnCheckedChangeListener(this);
|
|
|
| @@ -117,7 +122,8 @@ public class DefaultSearchEngineDialogHelper implements OnCheckedChangeListener,
|
| return;
|
| }
|
|
|
| - mDelegate.onUserSeachEngineChoice(mCurrentlySelectedKeyword.toString());
|
| + mDelegate.onUserSeachEngineChoice(
|
| + mSearchEngineKeywords, mCurrentlySelectedKeyword.toString());
|
| mFinishRunnable.run();
|
| }
|
|
|
|
|