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

[Assistant Voice Search] Fix colorful mic reverting to grey

When returning to the NTP after native is initialized, the native init
observer registration has no effect. This adds a check to for this
and triggers the colorful mic behavior immediately if native is already
initialized.

Bug: 1052073
Change-Id: I229ddebb16ddeb418219275874552e54fb64646e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2055389
Commit-Queue: Brandon Wylie <wylieb@chromium.org>
Reviewed-by: default avatarTed Choc <tedchoc@chromium.org>
Cr-Commit-Position: refs/heads/master@{#742303}
parent 48ce2e62
......@@ -45,6 +45,7 @@ public class ActivityLifecycleDispatcherImpl implements ActivityLifecycleDispatc
new ObserverList<>();
private @ActivityState int mActivityState = ActivityState.DESTROYED;
private boolean mIsNativeInitialized;
@Override
public void register(LifecycleObserver observer) {
......@@ -115,6 +116,11 @@ public class ActivityLifecycleDispatcherImpl implements ActivityLifecycleDispatc
return mActivityState;
}
@Override
public boolean isNativeInitializationFinished() {
return mIsNativeInitialized;
}
void dispatchPreInflationStartup() {
for (InflationObserver observer : mInflationObservers) {
observer.onPreInflationStartup();
......@@ -160,6 +166,7 @@ public class ActivityLifecycleDispatcherImpl implements ActivityLifecycleDispatc
}
void dispatchNativeInitializationFinished() {
mIsNativeInitialized = true;
for (NativeInitObserver observer : mNativeInitObservers) {
observer.onFinishNativeInitialization();
}
......
......@@ -933,6 +933,9 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer
public void initialize(ActivityLifecycleDispatcher activityLifecycleDispatcher) {
mActivityLifecycleDispatcher = activityLifecycleDispatcher;
mActivityLifecycleDispatcher.register(this);
if (mActivityLifecycleDispatcher.isNativeInitializationFinished()) {
onFinishNativeInitialization();
}
}
@Override
......
......@@ -683,6 +683,11 @@ public class AppMenuTest extends DummyUiActivityTestCase {
public int getCurrentActivityState() {
return 0;
}
@Override
public boolean isNativeInitializationFinished() {
return false;
}
}
private class TestMenuButtonDelegate implements MenuButtonDelegate {
......
......@@ -71,4 +71,7 @@ public interface ActivityLifecycleDispatcher {
*/
@ActivityState
int getCurrentActivityState();
/** @return Whether native initialization is complete. */
boolean isNativeInitializationFinished();
}
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