diff --git a/android/java/apk_for_test.flags b/android/java/apk_for_test.flags index ce3c1bf706d..e7068254b8c 100644 --- a/android/java/apk_for_test.flags +++ b/android/java/apk_for_test.flags @@ -434,6 +434,7 @@ } -keep class org.chromium.chrome.browser.omnibox.suggestions.AutocompleteMediator { + *** mNativeInitialized; public (...); } diff --git a/android/javatests/org/chromium/chrome/browser/BytecodeTest.java b/android/javatests/org/chromium/chrome/browser/BytecodeTest.java index 85ad2e29b0c..c724902321a 100644 --- a/android/javatests/org/chromium/chrome/browser/BytecodeTest.java +++ b/android/javatests/org/chromium/chrome/browser/BytecodeTest.java @@ -697,6 +697,9 @@ public class BytecodeTest { Assert.assertTrue(fieldExists( "org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings", "mSite", true, Website.class)); + Assert.assertTrue( + fieldExists("org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator", + "mNativeInitialized", true, boolean.class)); } @Test diff --git a/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/BraveAutocompleteMediator.java b/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/BraveAutocompleteMediator.java index 4719516c01f..1ffa6ab54dd 100644 --- a/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/BraveAutocompleteMediator.java +++ b/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/BraveAutocompleteMediator.java @@ -30,6 +30,8 @@ import org.chromium.ui.modelutil.PropertyModel; class BraveAutocompleteMediator extends AutocompleteMediator { private static final String AUTOCOMPLETE_ENABLED = "brave.autocomplete_enabled"; + private boolean mNativeInitialized; + public BraveAutocompleteMediator(@NonNull Context context, @NonNull AutocompleteDelegate delegate, @NonNull UrlBarEditingTextStateProvider textProvider, @@ -59,4 +61,11 @@ class BraveAutocompleteMediator extends AutocompleteMediator { super.onTextChanged(textWithoutAutocomplete, textWithAutocomplete); } + + @Override + public void onUrlFocusChange(boolean hasFocus) { + if (!mNativeInitialized) return; + + super.onUrlFocusChange(hasFocus); + } } diff --git a/build/android/bytecode/java/org/brave/bytecode/BraveAutocompleteMediatorClassAdapter.java b/build/android/bytecode/java/org/brave/bytecode/BraveAutocompleteMediatorClassAdapter.java index 6e984508628..65adaceceb4 100644 --- a/build/android/bytecode/java/org/brave/bytecode/BraveAutocompleteMediatorClassAdapter.java +++ b/build/android/bytecode/java/org/brave/bytecode/BraveAutocompleteMediatorClassAdapter.java @@ -17,5 +17,8 @@ public class BraveAutocompleteMediatorClassAdapter extends BraveClassVisitor { super(visitor); redirectConstructor(sAutocompleteMediator, sBraveAutocompleteMediator); + + deleteField(sBraveAutocompleteMediator, "mNativeInitialized"); + makeProtectedField(sAutocompleteMediator, "mNativeInitialized"); } }