| Index: chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
|
| index 289dad8178c97d3332aba8c2c1dae7a747c6ef29..07a959b1e654d827c9f000535257b9a1821bf320 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
|
| @@ -88,6 +88,7 @@ import org.chromium.chrome.browser.history.HistoryManagerUtils;
|
| import org.chromium.chrome.browser.infobar.InfoBarContainer;
|
| import org.chromium.chrome.browser.init.AsyncInitializationActivity;
|
| import org.chromium.chrome.browser.init.ProcessInitializationHandler;
|
| +import org.chromium.chrome.browser.locale.LocaleManager;
|
| import org.chromium.chrome.browser.media.PictureInPictureController;
|
| import org.chromium.chrome.browser.metrics.LaunchMetrics;
|
| import org.chromium.chrome.browser.metrics.StartupMetrics;
|
| @@ -740,7 +741,7 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
|
| * @return Whether contextual search is allowed for this activity or not.
|
| */
|
| protected boolean isContextualSearchAllowed() {
|
| - return true;
|
| + return !LocaleManager.getInstance().needToCheckForSearchEnginePromo();
|
| }
|
|
|
| @Override
|
| @@ -1377,9 +1378,18 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
|
| return new IntentHandlerDelegate() {
|
| @Override
|
| public void processWebSearchIntent(String query) {
|
| - Intent searchIntent = new Intent(Intent.ACTION_WEB_SEARCH);
|
| + final Intent searchIntent = new Intent(Intent.ACTION_WEB_SEARCH);
|
| searchIntent.putExtra(SearchManager.QUERY, query);
|
| - startActivity(searchIntent);
|
| + Callback<Boolean> callback = new Callback<Boolean>() {
|
| + @Override
|
| + public void onResult(Boolean result) {
|
| + if (result != null && result) startActivity(searchIntent);
|
| + }
|
| + };
|
| + if (!LocaleManager.getInstance().showSearchEnginePromoIfNeeded(
|
| + ChromeActivity.this, callback)) {
|
| + callback.onResult(true);
|
| + }
|
| }
|
|
|
| @Override
|
|
|