Commit d51fec50 authored by Brandon Wylie's avatar Brandon Wylie Committed by Commit Bot

Check if the DSE has actually changed when observing TemplateUrlService

TemplateUrlService's observer methods are called for any changes, but
we should only update the search engine logo when the search engine
changes. This was causing a couple problems with the icon misbehaving.

Bug: 987905,987921
Change-Id: I62895dc6f32c091ccc00452cb0640c2a32774e28
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1724818
Commit-Queue: Brandon Wylie <wylieb@chromium.org>
Reviewed-by: default avatarTheresa <twellington@chromium.org>
Cr-Commit-Position: refs/heads/master@{#681938}
parent 64c04972
...@@ -130,8 +130,7 @@ import java.util.List; ...@@ -130,8 +130,7 @@ import java.util.List;
* with the rest of the application to ensure the toolbar is always visually up to date. * with the rest of the application to ensure the toolbar is always visually up to date.
*/ */
public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlFocusChangeListener, public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlFocusChangeListener,
ThemeColorObserver, MenuButtonDelegate, ThemeColorObserver, MenuButtonDelegate {
TemplateUrlService.TemplateUrlServiceObserver {
/** /**
* Handle UI updates of menu icons. Only applicable for phones. * Handle UI updates of menu icons. Only applicable for phones.
*/ */
...@@ -239,10 +238,6 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF ...@@ -239,10 +238,6 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF
private AppMenuHandler mAppMenuHandler; private AppMenuHandler mAppMenuHandler;
private String mSearchEngineUrl = "";
private boolean mShouldShowSearchEngineLogo;
private boolean mIsSearchEngineGoogle;
/** /**
* Creates a ToolbarManager object. * Creates a ToolbarManager object.
* *
...@@ -1304,23 +1299,16 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF ...@@ -1304,23 +1299,16 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF
} }
mSearchEngine = searchEngine; mSearchEngine = searchEngine;
mLocationBar.updateSearchEngineStatusIcon(
SearchEngineLogoUtils.shouldShowSearchEngineLogo(),
TemplateUrlServiceFactory.get().isDefaultSearchEngineGoogle(),
SearchEngineLogoUtils.getSearchLogoUrl());
mToolbar.onDefaultSearchEngineChanged(); mToolbar.onDefaultSearchEngineChanged();
} }
}; };
templateUrlService.addObserver(mTemplateUrlObserver); templateUrlService.addObserver(mTemplateUrlObserver);
} }
@Override
public void onTemplateURLServiceChanged() {
mShouldShowSearchEngineLogo = SearchEngineLogoUtils.shouldShowSearchEngineLogo();
mIsSearchEngineGoogle = TemplateUrlServiceFactory.get().isDefaultSearchEngineGoogle();
mSearchEngineUrl = TemplateUrlServiceFactory.get().getUrlForSearchQuery(
/* search query which is stripped out later */ "foo");
mLocationBar.updateSearchEngineStatusIcon(
mShouldShowSearchEngineLogo, mIsSearchEngineGoogle, mSearchEngineUrl);
}
private void onNativeLibraryReady() { private void onNativeLibraryReady() {
mNativeLibraryReady = true; mNativeLibraryReady = true;
...@@ -1349,11 +1337,6 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF ...@@ -1349,11 +1337,6 @@ public class ToolbarManager implements ScrimObserver, ToolbarTabController, UrlF
mTabCountProvider.setTabModelSelector(mTabModelSelector); mTabCountProvider.setTabModelSelector(mTabModelSelector);
mIncognitoStateProvider.setTabModelSelector(mTabModelSelector); mIncognitoStateProvider.setTabModelSelector(mTabModelSelector);
mAppThemeColorProvider.setIncognitoStateProvider(mIncognitoStateProvider); mAppThemeColorProvider.setIncognitoStateProvider(mIncognitoStateProvider);
// Listen for possible changes to the DSE.
TemplateUrlServiceFactory.get().addObserver(this);
TemplateUrlServiceFactory.get().runWhenLoaded(() -> onTemplateURLServiceChanged());
TemplateUrlServiceFactory.get().load();
} }
private void handleTabRestoreCompleted() { private void handleTabRestoreCompleted() {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment