3/N Move SignalCallback to OperatorNameViewController.
Bug: 196625757 Test: manual Change-Id: I73e8dec6fef63c10618656c975e30bb94cace03f
This commit is contained in:
@@ -28,17 +28,13 @@ import com.android.keyguard.KeyguardUpdateMonitorCallback;
|
||||
import com.android.settingslib.WirelessUtils;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.demomode.DemoModeCommandReceiver;
|
||||
import com.android.systemui.statusbar.policy.NetworkController;
|
||||
import com.android.systemui.statusbar.policy.NetworkController.IconState;
|
||||
import com.android.systemui.statusbar.policy.NetworkController.SignalCallback;
|
||||
import com.android.systemui.tuner.TunerService;
|
||||
import com.android.systemui.tuner.TunerService.Tunable;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/** Shows the operator name */
|
||||
public class OperatorNameView extends TextView implements DemoModeCommandReceiver,
|
||||
SignalCallback, Tunable {
|
||||
public class OperatorNameView extends TextView implements DemoModeCommandReceiver, Tunable {
|
||||
|
||||
private static final String KEY_SHOW_OPERATOR_NAME = "show_operator_name";
|
||||
|
||||
@@ -69,7 +65,6 @@ public class OperatorNameView extends TextView implements DemoModeCommandReceive
|
||||
super.onAttachedToWindow();
|
||||
mKeyguardUpdateMonitor = Dependency.get(KeyguardUpdateMonitor.class);
|
||||
mKeyguardUpdateMonitor.registerCallback(mCallback);
|
||||
Dependency.get(NetworkController.class).addCallback(this);
|
||||
Dependency.get(TunerService.class).addTunable(this, KEY_SHOW_OPERATOR_NAME);
|
||||
}
|
||||
|
||||
@@ -77,15 +72,9 @@ public class OperatorNameView extends TextView implements DemoModeCommandReceive
|
||||
protected void onDetachedFromWindow() {
|
||||
super.onDetachedFromWindow();
|
||||
mKeyguardUpdateMonitor.removeCallback(mCallback);
|
||||
Dependency.get(NetworkController.class).removeCallback(this);
|
||||
Dependency.get(TunerService.class).removeTunable(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setIsAirplaneMode(IconState icon) {
|
||||
update();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTuningChanged(String key, String newValue) {
|
||||
update();
|
||||
@@ -107,7 +96,7 @@ public class OperatorNameView extends TextView implements DemoModeCommandReceive
|
||||
update();
|
||||
}
|
||||
|
||||
private void update() {
|
||||
void update() {
|
||||
boolean showOperatorName = Dependency.get(TunerService.class)
|
||||
.getValue(KEY_SHOW_OPERATOR_NAME, 1) != 0;
|
||||
setVisibility(showOperatorName ? VISIBLE : GONE);
|
||||
|
||||
@@ -19,6 +19,7 @@ package com.android.systemui.statusbar;
|
||||
import android.view.View;
|
||||
|
||||
import com.android.systemui.plugins.DarkIconDispatcher;
|
||||
import com.android.systemui.statusbar.policy.NetworkController;
|
||||
import com.android.systemui.util.ViewController;
|
||||
|
||||
import javax.inject.Inject;
|
||||
@@ -26,35 +27,42 @@ import javax.inject.Inject;
|
||||
/** Controller for {@link OperatorNameView}. */
|
||||
public class OperatorNameViewController extends ViewController<OperatorNameView> {
|
||||
private final DarkIconDispatcher mDarkIconDispatcher;
|
||||
private final NetworkController mNetworkController;
|
||||
|
||||
private OperatorNameViewController(OperatorNameView view,
|
||||
DarkIconDispatcher darkIconDispatcher) {
|
||||
DarkIconDispatcher darkIconDispatcher,
|
||||
NetworkController networkController) {
|
||||
super(view);
|
||||
mDarkIconDispatcher = darkIconDispatcher;
|
||||
mNetworkController = networkController;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onViewAttached() {
|
||||
mDarkIconDispatcher.addDarkReceiver(mDarkReceiver);
|
||||
mNetworkController.addCallback(mSignalCallback);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onViewDetached() {
|
||||
mDarkIconDispatcher.removeDarkReceiver(mDarkReceiver);
|
||||
mNetworkController.addCallback(mSignalCallback);
|
||||
}
|
||||
|
||||
/** Factory for constructing an {@link OperatorNameViewController}. */
|
||||
public static class Factory {
|
||||
private final DarkIconDispatcher mDarkIconDispatcher;
|
||||
private final NetworkController mNetworkController;
|
||||
|
||||
@Inject
|
||||
public Factory(DarkIconDispatcher darkIconDispatcher) {
|
||||
public Factory(DarkIconDispatcher darkIconDispatcher, NetworkController networkController) {
|
||||
mDarkIconDispatcher = darkIconDispatcher;
|
||||
mNetworkController = networkController;
|
||||
}
|
||||
|
||||
/** Create an {@link OperatorNameViewController}. */
|
||||
public OperatorNameViewController create(OperatorNameView view) {
|
||||
return new OperatorNameViewController(view, mDarkIconDispatcher);
|
||||
return new OperatorNameViewController(view, mDarkIconDispatcher, mNetworkController);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -70,4 +78,11 @@ public class OperatorNameViewController extends ViewController<OperatorNameView>
|
||||
private final DarkIconDispatcher.DarkReceiver mDarkReceiver =
|
||||
(area, darkIntensity, tint) ->
|
||||
mView.setTextColor(DarkIconDispatcher.getTint(area, mView, tint));
|
||||
private final NetworkController.SignalCallback mSignalCallback =
|
||||
new NetworkController.SignalCallback() {
|
||||
@Override
|
||||
public void setIsAirplaneMode(NetworkController.IconState icon) {
|
||||
mView.update();
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user